AMDAPlugin.cc
1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
* 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 "InternalFields_CartProcess.hh"
#include "InternalFields_MagProcess.hh"
#include "InternalFields_PolProcess.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 factInternalFields_CartProcess = boost::factory<InternalFields_CartProcess *>();
ServicesServer::getInstance()->addProcessFactory("internalfield_cart", factInternalFields_CartProcess);
ServicesServer::getInstance()->linkProcessWithPlugin("internalfield_cart", pm.getCurrentPluginPath());
ProcessFactory factInternalFields_MagProcess = boost::factory<InternalFields_MagProcess *>();
ServicesServer::getInstance()->addProcessFactory("internalfield_mag", factInternalFields_MagProcess);
ServicesServer::getInstance()->linkProcessWithPlugin("internalfield_mag", pm.getCurrentPluginPath());
ProcessFactory factInternalFields_PolProcess = boost::factory<InternalFields_PolProcess *>();
ServicesServer::getInstance()->addProcessFactory("internalfield_pol", factInternalFields_PolProcess);
ServicesServer::getInstance()->linkProcessWithPlugin("internalfield_pol", pm.getCurrentPluginPath());
}