CMS 3D CMS Logo

IgPluginFactoryBase.h

Go to the documentation of this file.
00001 #ifndef IGUANA_FRAMEWORK_IG_PLUGIN_DBVIEW_BASE_H
00002 # define IGUANA_FRAMEWORK_IG_PLUGIN_DBVIEW_BASE_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "Iguana/Framework/interface/config.h"
00007 # include <string>
00008 
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 
00013 class IgModule;
00014 class IgPluginInfo;
00015 class IgModuleDescriptor;
00016 
00017 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00018 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00019 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00020 
00022 class IgPluginFactoryBase
00023 {
00024 public:
00025     IgPluginFactoryBase (const std::string &tag);
00026     virtual ~IgPluginFactoryBase (void);
00027 
00028     // Category tag
00029     const std::string & category (void) const;
00030 
00031     // Notifications from IgManager.
00032     virtual void        restore (IgModule *module, IgModuleDescriptor *info) =0;
00033     virtual void        addInfo (IgPluginInfo *info) = 0;
00034     virtual void        removeInfo (IgPluginInfo *info) = 0;
00035 
00036 protected:
00037     // Notifications from derived class
00038     virtual void        rebuild (void);
00039 
00040 private:
00041     std::string m_tag;
00042 
00043     // undefined, no semantics
00044     IgPluginFactoryBase (const IgPluginFactoryBase &);
00045     IgPluginFactoryBase &operator= (const IgPluginFactoryBase &);
00046 };
00047 
00048 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00049 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00050 
00051 #endif // IGUANA_FRAMEWORK_IG_PLUGIN_DBVIEW_BASE_H

Generated on Tue Jun 9 17:38:27 2009 for CMSSW by  doxygen 1.5.4