- << "\t} // end message_set vector\n"\r
- << "{\n"\r
- << " for(std::shared_ptr<message_set_t> cms: message_set_)\n"\r
- << " {\n"\r
- << " std::vector<std::shared_ptr<message_definition_t>> messages_definition = cms->get_messages_definition();\n"\r
- << " for(std::shared_ptr<message_definition_t> cmd : messages_definition)\n"\r
- << " {\n"\r
- << " cmd->set_parent(cms);\n"\r
- << " std::vector<std::shared_ptr<signal_t>> signals = cmd->get_signals();\n"\r
- << " for(std::shared_ptr<signal_t> sig: signals)\n"\r
- << " {\n"\r
- << " sig->set_parent(cmd);\n"\r
- << " }\n"\r
- << " }\n\n"\r
- << " std::vector<std::shared_ptr<diagnostic_message_t>> diagnostic_messages = cms->get_diagnostic_messages();\n"\r
- << " for(std::shared_ptr<diagnostic_message_t> dm : diagnostic_messages)\n"\r
- << " {\n"\r
- << " dm->set_parent(cms);\n"\r
- << " }\n"\r
- << " }\n"\r
- << " }\n\n"\r
- << "const std::string application_t::get_diagnostic_bus() const\n"\r
- << "{\n";\r
-\r
- std::string active_bus = "";\r
- for (const auto& d : message_set.diagnostic_messages())\r
- {\r
- if (d.bus().size() == 0) std::cerr << "ERROR: The bus name should be set for each diagnostic message." << std::endl;\r
- if (active_bus.size() == 0) active_bus = d.bus();\r
- if (active_bus != d.bus()) std::cerr << "ERROR: The bus name should be the same for each diagnostic message." << std::endl;\r
- }\r
-\r
- out << "\treturn " << gen(active_bus) << ";\n"\r
- << "}\n\n";\r
-\r
+ << "\n"\r
+ << "CTLP_ONLOAD(plugin, handle) {\n"\r
+ << "\tafb_api_t api = (afb_api_t) plugin->api;\n"\r
+ << "\tCtlConfigT* CtlConfig = (CtlConfigT*) afb_api_get_userdata(api);\n"\r
+ << "\tapplication_t* app = (application_t*) getExternalData(CtlConfig);\n"\r
+ << "\n"\r
+ << "\treturn app->add_message_set(cms);\n"\r
+ << "}\n\n\n}\n";\r