Go to the documentation of this file.00001 #ifndef RPC_DB_FW_H
00002 #define RPC_DB_FW_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include "CondTools/RPC/interface/RPCDBCom.h"
00014 #include "CoralBase/TimeStamp.h"
00015 #include "CondTools/RPC/interface/RPCImonSH.h"
00016 #include "CondTools/RPC/interface/RPCVmonSH.h"
00017 #include "CondTools/RPC/interface/RPCStatusSH.h"
00018 #include "CondTools/RPC/interface/RPCTempSH.h"
00019 #include "CondFormats/RPCObjects/interface/RPCObCond.h"
00020 #include "CondTools/RPC/interface/RPCGasSH.h"
00021 #include "CondTools/RPC/interface/RPCIDMapSH.h"
00022 #include "CondFormats/RPCObjects/interface/RPCObFebmap.h"
00023 #include "CondFormats/RPCObjects/interface/RPCObUXC.h"
00024 #include "CondFormats/RPCObjects/interface/RPCObGasMix.h"
00025
00026 struct dbread{
00027 float alias;
00028 float value;
00029 };
00030
00031
00032 class RPCFw : virtual public RPCDBCom
00033 {
00034 public:
00035 RPCFw( const std::string& connectionString,
00036 const std::string& userName,
00037 const std::string& password);
00038 virtual ~RPCFw();
00039 void run();
00040
00041 coral::TimeStamp UTtoT(long long utime);
00042 unsigned long long TtoUT(coral::TimeStamp time);
00043
00044 coral::TimeStamp tMIN;
00045 coral::TimeStamp tMAX;
00046 unsigned long long N_IOV;
00047
00048 std::vector<RPCObImon::I_Item> createIMON(long long since, long long till);
00049 std::vector<RPCObVmon::V_Item> createVMON(long long from, long long till);
00050 std::vector<RPCObStatus::S_Item> createSTATUS(long long since, long long till);
00051 std::vector<RPCObGas::Item> createGAS(long long since, long long till);
00052 std::vector<RPCObTemp::T_Item> createT(long long since, long long till);
00053 std::vector<RPCObPVSSmap::Item> createIDMAP();
00054 std::vector<RPCObFebmap::Feb_Item> createFEB(long long since, long long till);
00055 std::vector<RPCObUXC::Item> createUXC(long long since, long long till);
00056 std::vector<RPCObGasMix::Item> createMix(long long since, long long till);
00057 bool isMajor(coral::TimeStamp fir, coral::TimeStamp sec);
00058
00059 private:
00060 std::string m_connectionString;
00061 std::string m_userName;
00062 std::string m_password;
00063 };
00064
00065 #endif