CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/CondFormats/DTObjects/interface/DTConfigAbstractHandler.h

Go to the documentation of this file.
00001 #ifndef DTConfigAbstractHandler_H
00002 #define DTConfigAbstractHandler_H
00003 
00014 //----------------------
00015 // Base Class Headers --
00016 //----------------------
00017 
00018 
00019 //------------------------------------
00020 // Collaborating Class Declarations --
00021 //------------------------------------
00022 
00023 class DTKeyedConfig;
00024 class DTKeyedConfigListRcd;
00025 namespace edm{
00026   class EventSetup;
00027 }
00028 
00029 //---------------
00030 // C++ Headers --
00031 //---------------
00032 #include <string>
00033 #include <vector>
00034 
00035 //              ---------------------
00036 //              -- Class Interface --
00037 //              ---------------------
00038 
00039 class DTConfigAbstractHandler {
00040 
00041  public:
00042 
00045 //  DTConfigAbstractHandler();
00046 
00049   virtual ~DTConfigAbstractHandler();
00050 
00053 
00054   static DTConfigAbstractHandler* getInstance();
00055 
00057   virtual int get( const edm::EventSetup& context,
00058                    int cfgId, const DTKeyedConfig*& obj );
00059   virtual int get( const DTKeyedConfigListRcd& keyRecord,
00060                    int cfgId, const DTKeyedConfig*& obj );
00061   virtual void getData( const edm::EventSetup& context,
00062                         int cfgId, std::vector<std::string>& list );
00063   virtual void getData( const DTKeyedConfigListRcd& keyRecord,
00064                         int cfgId, std::vector<std::string>& list );
00065 
00067   virtual void purge();
00068 
00069  protected:
00070 
00073   DTConfigAbstractHandler();
00074   static DTConfigAbstractHandler* instance;
00075 
00076  private:
00077 
00080   DTConfigAbstractHandler( const DTConfigAbstractHandler& x );
00081   const DTConfigAbstractHandler& operator=( const DTConfigAbstractHandler& x );
00082 
00083 };
00084 
00085 
00086 #endif // DTConfigAbstractHandler_H
00087