EUDAQ
 All Classes Namespaces Files Functions Variables Pages
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
eudaq::PluginManager Class Reference

#include <PluginManager.hh>

Public Types

typedef
DataConverterPlugin::t_eventid 
t_eventid
 

Public Member Functions

void RegisterPlugin (DataConverterPlugin *plugin)
 
DataConverterPluginGetPlugin (t_eventid eventtype)
 
DataConverterPluginGetPlugin (const Event &event)
 

Static Public Member Functions

static PluginManagerGetInstance ()
 
static unsigned GetTriggerID (const Event &)
 
static int IsSyncWithTLU (eudaq::Event const &ev, eudaq::TLUEvent const &tlu)
 
static t_eventid getEventId (eudaq::Event const &ev)
 
static void setCurrentTLUEvent (eudaq::Event &ev, eudaq::TLUEvent const &tlu)
 
static void Initialize (const DetectorEvent &)
 
static lcio::LCRunHeader * GetLCRunHeader (const DetectorEvent &)
 
static StandardEvent ConvertToStandard (const DetectorEvent &)
 
static lcio::LCEvent * ConvertToLCIO (const DetectorEvent &)
 
static void ConvertStandardSubEvent (StandardEvent &, const Event &)
 
static void ConvertLCIOSubEvent (lcio::LCEvent &, const Event &)
 

Friends

class _dummy
 

Detailed Description

The plugin manager has a map of all available plugins. On creating time every plugin automatically registeres at the plugin manager, wich adds the event type string and a pointer to the according plugin to a map. A generic event being received contains an identification string, and the plugin manager can deliver the correct plugin to convert it to lcio.

Member Function Documentation

PluginManager & eudaq::PluginManager::GetInstance ( )
static

Get the instance of the plugin manager. As this is a singleton class with private constructor and copy constructor, this is the only way to access it.

DataConverterPlugin & eudaq::PluginManager::GetPlugin ( PluginManager::t_eventid  eventtype)

Get the correct plugin implementation according to the event type.

void eudaq::PluginManager::RegisterPlugin ( DataConverterPlugin plugin)

Register a new plugin to the plugin manager.


The documentation for this class was generated from the following files: