+ case openxc_DynamicField_Type::openxc_DynamicField_Type_STRING:
+ for(i=0; i<=n_signals; i++)
+ {
+ if(match((std::string*)key->string_value, (std::string*)SIGNALS[i]->genericName))
+ ret_signals.insert(&SIGNALS[i]);
+ }
+ break;
+ case openxc_DynamicField_Type::openxc_DynamicField_Type_NUM:
+ for(i=0; i<=n_signals; i++)
+ {
+ CanMessageDefinition *msg_def = SIGNALS[i]->message;
+ if(msg_def->id == key->numeric_value)
+ ret_signals.insert(&SIGNALS[i])
+ }
+ break;
+ default:
+ return NULL;
+ break;