CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/CondCore/DTPlugins/interface/DTConfigPluginHandler.h

Go to the documentation of this file.
00001 #ifndef DTConfigPluginHandler_H
00002 #define DTConfigPluginHandler_H
00003 
00014 //----------------------
00015 // Base Class Headers --
00016 //----------------------
00017 #include "CondFormats/DTObjects/interface/DTConfigAbstractHandler.h"
00018 
00019 //------------------------------------
00020 // Collaborating Class Declarations --
00021 //------------------------------------
00022 
00023 
00024 //---------------
00025 // C++ Headers --
00026 //---------------
00027 #include <string>
00028 #include <map>
00029 
00030 //              ---------------------
00031 //              -- Class Interface --
00032 //              ---------------------
00033 
00034 class DTConfigPluginHandler: public DTConfigAbstractHandler {
00035 
00036  public:
00037 
00040   virtual ~DTConfigPluginHandler();
00041 
00044 
00045   static void build();
00046 
00048   virtual int get( const edm::EventSetup& context,
00049                    int cfgId, const DTKeyedConfig*& obj );
00050   virtual int get( const DTKeyedConfigListRcd& keyRecord,
00051                    int cfgId, const DTKeyedConfig*& obj );
00052   virtual void getData( const edm::EventSetup& context,
00053                         int cfgId, std::vector<std::string>& list );
00054   virtual void getData( const DTKeyedConfigListRcd& keyRecord,
00055                         int cfgId, std::vector<std::string>& list );
00056 
00057   void purge();
00058 
00059   static int maxBrickNumber;
00060   static int maxStringNumber;
00061   static int maxByteNumber;
00062 
00063  private:
00064 
00067   DTConfigPluginHandler();
00068   DTConfigPluginHandler( const DTConfigPluginHandler& x );
00069   const DTConfigPluginHandler& operator=( const DTConfigPluginHandler& x );
00070 
00071   typedef std::pair<int,const DTKeyedConfig*> counted_brick;
00072   std::map<int,counted_brick> brickMap;
00073   int cachedBrickNumber;
00074   int cachedStringNumber;
00075   int cachedByteNumber;
00076 
00077 };
00078 
00079 #endif // DTConfigPluginHandler_H
00080 
00081