Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:15

0001 #ifndef L1RPCHWCONFIGSOURCEHANDLER
0002 #define L1RPCHWCONFIGSOURCEHANDLER
0003 
0004 #include <vector>
0005 #include <string>
0006 #include <iostream>
0007 #include <typeinfo>
0008 
0009 #include "FWCore/Framework/interface/MakerMacros.h"
0010 #include "CondCore/PopCon/interface/PopConSourceHandler.h"
0011 //#include "CondCore/PopCon/interface/LogReader.h"
0012 #include "FWCore/Framework/interface/ESHandle.h"
0013 #include "FWCore/Framework/interface/Event.h"
0014 #include "DataFormats/Common/interface/Handle.h"
0015 #include "FWCore/Framework/interface/EventSetup.h"
0016 #include "FWCore/ParameterSet/interface/ParameterSetfwd.h"
0017 
0018 #include "CondFormats/RPCObjects/interface/L1RPCHwConfig.h"
0019 #include "CondFormats/DataRecord/interface/L1RPCHwConfigRcd.h"
0020 
0021 #include "CondCore/CondDB/interface/Session.h"
0022 #include "RelationalAccess/ITable.h"
0023 #include "RelationalAccess/ISchema.h"
0024 #include "RelationalAccess/IQuery.h"
0025 #include "RelationalAccess/ICursor.h"
0026 #include "CoralBase/AttributeList.h"
0027 #include "CoralBase/Attribute.h"
0028 #include "CoralBase/AttributeSpecification.h"
0029 
0030 namespace popcon {
0031   class L1RPCHwConfigSourceHandler : public popcon::PopConSourceHandler<L1RPCHwConfig> {
0032   public:
0033     L1RPCHwConfigSourceHandler(const edm::ParameterSet& ps);
0034     ~L1RPCHwConfigSourceHandler() override;
0035     void getNewObjects() override;
0036     std::string id() const override { return m_name; }
0037     void ConnectOnlineDB(std::string connect, std::string authPath);
0038     void DisconnectOnlineDB();
0039     void readHwConfig1();
0040     int Compare2Configs(const Ref& set1, L1RPCHwConfig* set2);
0041 
0042   private:
0043     L1RPCHwConfig* disabledDevs;
0044     cond::persistency::Session session;
0045     std::string m_name;
0046     int m_dummy;
0047     int m_validate;
0048     std::vector<int> m_disableCrates;
0049     std::vector<int> m_disableTowers;
0050     std::string m_connect;
0051     std::string m_authpath;
0052   };
0053 }  // namespace popcon
0054 #endif