AMDAPlugin.cc 1.34 KB
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
#include "ServicesServer.hh"
#include "PluginManager.hh"

#include "MLTProcess.hh"

using namespace AMDA::Parameters;

/**
   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) {
    ProcessFactory factMLTProcess = boost::factory<MLTProcess*>();
    ServicesServer::getInstance()->addProcessFactory("maglib_mlt", factMLTProcess);
    ServicesServer::getInstance()->linkProcessWithPlugin("maglib_mlt", pm.getCurrentPluginPath());

  
    ProcessFactory factInvLatProcess = boost::factory<InvLatProcess*>();
    ServicesServer::getInstance()->addProcessFactory("maglib_invlat", factInvLatProcess);
    ServicesServer::getInstance()->linkProcessWithPlugin("maglib_invlat", pm.getCurrentPluginPath());
  
    ProcessFactory factLparamProcess = boost::factory<LparamProcess*>();
    ServicesServer::getInstance()->addProcessFactory("maglib_lparam", factLparamProcess);
    ServicesServer::getInstance()->linkProcessWithPlugin("maglib_lparam", pm.getCurrentPluginPath());
     
}