/* * AMDAPlugin.cc * * Created on: Nov 25, 2012 * Author: f.casimir */ //============================================================================= // Include section //============================================================================= // Standard libraries include files //----------------------------------------------------------------------------- #include // Include oriented definitions //----------------------------------------------------------------------------- // Module Kernel include files //----------------------------------------------------------------------------- #include "NodeCfg.hh" #include "XMLParameterConfigurator.hh" #include "ServicesServer.hh" #include "ParameterManager.hh" #include "PluginManager.hh" #include "ParamGetDDBase.hh" #include "GetDDBaseNode.hh" #include "VirtualInstrumentManager.hh" using namespace AMDA::Parameters; using namespace AMDA::XMLParameterConfigurator; // Other modules include files //----------------------------------------------------------------------------- //============================================================================= // Library function //============================================================================= /** * Retrieve the Plugin version we're going to expect */ extern "C" const char* getPluginVersion() { return "(Version)"; } /** * Tells us to register our functionality to an engine kernel */ extern "C" void registerPlugin(AMDA::Plugins::PluginManager & pm) { ParamGetFactory fact = boost::factory(); ServicesServer *servicesServer = ServicesServer::getInstance(); servicesServer->addParamGetFactory("DDBASE", fact); servicesServer->linkParamGetWithPlugin("DDBASE", pm.getCurrentPluginPath()); XMLParameterConfigurator* lXMLConf = dynamic_cast(servicesServer->getConfigurator().get()); lXMLConf->addNodeParser("param/get/vi",AMDA::XMLConfigurator::NodeCfgSPtr(new GetDDBaseNode)); } extern "C" void unregisterPlugin() { AMDA::DDServerInterface::VirtualInstrumentManager::releaseInstance(); }