CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_7_hltpatch2/src/CondTools/DT/interface/DTUserKeyedConfigHandler.h

Go to the documentation of this file.
00001 #ifndef DTUserKeyedConfigHandler_H
00002 #define DTUserKeyedConfigHandler_H
00003 
00014 //----------------------
00015 // Base Class Headers --
00016 //----------------------
00017 #include "CondCore/PopCon/interface/PopConSourceHandler.h"
00018 
00019 //------------------------------------
00020 // Collaborating Class Declarations --
00021 //------------------------------------
00022 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00023 #include "CondCore/DBCommon/interface/DbConnection.h"
00024 #include "CondFormats/DTObjects/interface/DTCCBConfig.h"
00025 #include <string>
00026 
00027 namespace cond {
00028   class KeyList;
00029 }
00030 
00031 //---------------
00032 // C++ Headers --
00033 //---------------
00034 
00035 
00036 //              ---------------------
00037 //              -- Class Interface --
00038 //              ---------------------
00039 
00040 class DTUserKeyedConfigHandler: public popcon::PopConSourceHandler<DTCCBConfig> {
00041 
00042  public:
00043 
00046   DTUserKeyedConfigHandler( const edm::ParameterSet& ps );
00047 
00050   virtual ~DTUserKeyedConfigHandler();
00051 
00054 
00055   void getNewObjects();
00056   std::string id() const;
00057 
00058   static void setList( cond::KeyList* list );
00059 
00060  private:
00061 
00062   int         dataRun;
00063   std::string dataTag;
00064   std::string onlineConnect;
00065   std::string onlineAuthentication;
00066   std::string brickContainer;
00067   std::vector<DTConfigKey> userConf;
00068   bool writeKeys;
00069   bool writeData;
00070   DTCCBConfig* ccbConfig;
00071   
00072   cond::DbConnection connection;
00073   cond::DbSession isession;
00074   void chkConfigList( const std::map<int,bool>& userBricks );
00075   bool userDiscardedKey( int key );
00076   static bool sameConfigList( const std::vector<DTConfigKey>& cfgl,
00077                               const std::vector<DTConfigKey>& cfgr );
00078 
00079   static cond::KeyList* keyList;
00080 
00081 };
00082 
00083 
00084 #endif // DTUserKeyedConfigHandler_H
00085 
00086 
00087 
00088 
00089 
00090