diff --git a/ssc/sscapi.cpp b/ssc/sscapi.cpp index 49b6db96f..443cad91f 100644 --- a/ssc/sscapi.cpp +++ b/ssc/sscapi.cpp @@ -160,7 +160,8 @@ extern module_entry_info cm_entry_wave_file_reader, cm_entry_grid, cm_entry_battery_stateful, - cm_entry_csp_subcomponent + cm_entry_csp_subcomponent, + cm_entry_hybrid ; /* official module table */ @@ -261,6 +262,7 @@ static module_entry_info *module_table[] = { &cm_entry_grid, &cm_entry_battery_stateful, &cm_entry_csp_subcomponent, + & cm_entry_hybrid, 0 }; SSCEXPORT ssc_module_t ssc_module_create( const char *name ) @@ -545,16 +547,24 @@ SSCEXPORT ssc_var_t ssc_data_lookup_case(ssc_data_t p_data, const char *name) return vt->lookup_match_case(name); } -SSCEXPORT void ssc_data_set_var(ssc_data_t p_data, const char *name, ssc_var_t p_var) +SSCEXPORT void ssc_data_set_var(ssc_data_t p_data, const char* name, ssc_var_t p_var) { auto vt = static_cast(p_data); if (!vt) return; auto vd = static_cast(p_var); if (!p_var) return; - // vt->assign_match_case(name, *vd); vt->assign(name, *vd); } +SSCEXPORT void ssc_data_set_var_match_case(ssc_data_t p_data, const char* name, ssc_var_t p_var) +{ + auto vt = static_cast(p_data); + if (!vt) return; + auto vd = static_cast(p_var); + if (!p_var) return; + vt->assign_match_case(name, *vd); +} + SSCEXPORT void ssc_data_set_string( ssc_data_t p_data, const char *name, const char *value ) { var_table *vt = static_cast(p_data); diff --git a/ssc/sscapi.h b/ssc/sscapi.h index 98cb40c45..2e458bb6f 100644 --- a/ssc/sscapi.h +++ b/ssc/sscapi.h @@ -234,7 +234,8 @@ ssc_data_set_table( ) for example. */ /**@{*/ -SSCEXPORT void ssc_data_set_var(ssc_data_t p_data, const char *name, ssc_var_t p_var); +SSCEXPORT void ssc_data_set_var(ssc_data_t p_data, const char* name, ssc_var_t p_var); +SSCEXPORT void ssc_data_set_var_match_case(ssc_data_t p_data, const char* name, ssc_var_t p_var); /** Assigns value of type @a SSC_STRING */ SSCEXPORT void ssc_data_set_string( ssc_data_t p_data, const char *name, const char *value );