CMS 3D CMS Logo

FWItemAccessorRegistry.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWItemAccessorRegistry_h
2 #define Fireworks_Core_FWItemAccessorRegistry_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWItemAccessorRegistry
7 //
18 //
19 // Original Author: Giulio Eulisse
20 // Created: Thu Feb 18 00:00:00 EDT 2010
21 //
22 
23 // system include files
24 
25 // user include files
28 
29 // forward declarations
30 
31 class FWItemAccessorBase;
32 class TClass;
33 
34 typedef FWItemAccessorBase*(IAccessorCreator)(const TClass*);
36 
37 #define REGISTER_FWITEMACCESSOR(_name_, _type_, _purpose_) \
38  DEFINE_FWITEMACCESSOR_METHODS(_name_, _type_, _purpose_); \
39  DEFINE_EDM_PLUGIN( \
40  FWItemAccessorRegistry, _name_, _name_::classRegisterTypeName() + "@" + _name_::classPurpose() + "@" #_name_)
41 
42 #define REGISTER_TEMPLATE_FWITEMACCESSOR(_name_, _type_, _purpose_) \
43  DEFINE_TEMPLATE_FWITEMACCESSOR_METHODS(_name_, _type_, _purpose_); \
44  DEFINE_EDM_PLUGIN( \
45  FWItemAccessorRegistry, _name_, _name_::classRegisterTypeName() + "@" + _name_::classPurpose() + "@" #_name_)
46 
47 #endif
IAccessorCreator
FWItemAccessorBase *() IAccessorCreator(const TClass *)
Definition: FWItemAccessorRegistry.h:34
PluginFactory.h
register_itemaccessorbase_macro.h
edmplugin::PluginFactory
Definition: PluginFactory.h:34
FWItemAccessorRegistry
edmplugin::PluginFactory< IAccessorCreator > FWItemAccessorRegistry
Definition: FWItemAccessorRegistry.h:35
FWItemAccessorBase
Definition: FWItemAccessorBase.h:33