File indexing completed on 2024-04-06 12:03:15
0001 #ifndef RPC_DB_FW_H
0002 #define RPC_DB_FW_H
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include "CondTools/RPC/interface/RPCDBCom.h"
0012 #include "CoralBase/TimeStamp.h"
0013 #include "CondTools/RPC/interface/RPCImonSH.h"
0014 #include "CondTools/RPC/interface/RPCVmonSH.h"
0015 #include "CondTools/RPC/interface/RPCStatusSH.h"
0016 #include "CondTools/RPC/interface/RPCTempSH.h"
0017 #include "CondFormats/RPCObjects/interface/RPCObCond.h"
0018 #include "CondTools/RPC/interface/RPCGasSH.h"
0019 #include "CondTools/RPC/interface/RPCIDMapSH.h"
0020 #include "CondFormats/RPCObjects/interface/RPCObFebmap.h"
0021 #include "CondFormats/RPCObjects/interface/RPCObUXC.h"
0022 #include "CondFormats/RPCObjects/interface/RPCObGasMix.h"
0023
0024 struct dbread {
0025 float alias;
0026 float value;
0027 };
0028
0029 class RPCFw : virtual public RPCDBCom {
0030 public:
0031 RPCFw(const std::string& connectionString, const std::string& userName, const std::string& password);
0032 ~RPCFw() override;
0033 void run() override;
0034
0035 coral::TimeStamp UTtoT(long long utime);
0036 unsigned long long TtoUT(const coral::TimeStamp& time);
0037
0038 coral::TimeStamp tMIN;
0039 coral::TimeStamp tMAX;
0040 unsigned long long N_IOV;
0041
0042 std::vector<RPCObImon::I_Item> createIMON(long long since, long long till);
0043 std::vector<RPCObVmon::V_Item> createVMON(long long from, long long till);
0044 std::vector<RPCObStatus::S_Item> createSTATUS(long long since, long long till);
0045 std::vector<RPCObGas::Item> createGAS(long long since, long long till);
0046 std::vector<RPCObTemp::T_Item> createT(long long since, long long till);
0047 std::vector<RPCObPVSSmap::Item> createIDMAP();
0048 std::vector<RPCObFebmap::Feb_Item> createFEB(long long since, long long till);
0049 std::vector<RPCObUXC::Item> createUXC(long long since, long long till);
0050 std::vector<RPCObGasMix::Item> createMix(long long since, long long till);
0051 bool isMajor(const coral::TimeStamp& fir, const coral::TimeStamp& sec);
0052
0053 private:
0054 std::string m_connectionString;
0055 std::string m_userName;
0056 std::string m_password;
0057 };
0058
0059 #endif