CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Namespaces | Macros
PluginFactory.h File Reference
#include <map>
#include <vector>
#include "FWCore/PluginManager/interface/PluginFactoryBase.h"
#include "FWCore/PluginManager/interface/PluginManager.h"

Go to the source code of this file.

Classes

class  edmplugin::PluginFactory< T >
 
class  edmplugin::PluginFactory< R *(Args...)>
 
struct  edmplugin::PluginFactory< R *(Args...)>::PMaker< TPlug >
 
struct  edmplugin::PluginFactory< R *(Args...)>::PMakerBase
 

Namespaces

 edmplugin
 

Macros

#define CONCATENATE(a, b)   CONCATENATE_HIDDEN(a,b)
 
#define CONCATENATE_HIDDEN(a, b)   a ## b
 
#define DEFINE_EDM_PLUGIN(factory, type, name)   static factory::PMaker<type> EDM_PLUGIN_SYM(s_maker , __LINE__ ) (name)
 
#define EDM_PLUGIN_SYM(x, y)   EDM_PLUGIN_SYM2(x,y)
 
#define EDM_PLUGIN_SYM2(x, y)   x ## y
 
#define EDM_REGISTER_PLUGINFACTORY(_factory_, _category_)
 

Macro Definition Documentation

#define CONCATENATE (   a,
  b 
)    CONCATENATE_HIDDEN(a,b)

Definition at line 89 of file PluginFactory.h.

#define CONCATENATE_HIDDEN (   a,
  b 
)    a ## b

Definition at line 88 of file PluginFactory.h.

#define DEFINE_EDM_PLUGIN (   factory,
  type,
  name 
)    static factory::PMaker<type> EDM_PLUGIN_SYM(s_maker , __LINE__ ) (name)

Definition at line 101 of file PluginFactory.h.

#define EDM_PLUGIN_SYM (   x,
  y 
)    EDM_PLUGIN_SYM2(x,y)

Definition at line 98 of file PluginFactory.h.

#define EDM_PLUGIN_SYM2 (   x,
  y 
)    x ## y

Definition at line 99 of file PluginFactory.h.

#define EDM_REGISTER_PLUGINFACTORY (   _factory_,
  _category_ 
)
Value:
namespace edmplugin {\
template<> const std::string& edmplugin::PluginFactory<_factory_::TemplateArgType>::category() const { static std::string s_cat(_category_); return s_cat;}\
} enum {CONCATENATE(dummy_edm_register_pluginfactory_, __LINE__)}
#define CONCATENATE(a, b)
Definition: PluginFactory.h:89
T get(const Candidate &c)
Definition: component.h:56

Definition at line 90 of file PluginFactory.h.