CMS 3D CMS Logo

LHCInfoPopConSourceHandler.h
Go to the documentation of this file.
1 #ifndef LHCINFOPOPCONSOURCEHANDLER_H
2 #define LHCINFOPOPCONSOURCEHANDLER_H
3 
4 #include <string>
5 
9 
11 public:
13  ~LHCInfoPopConSourceHandler() override;
14  void getNewObjects() override;
15  std::string id() const override;
16 
17 private:
18  void addEmptyPayload(cond::Time_t iov);
19  bool getNextFillData(cond::persistency::Session& session, const boost::posix_time::ptime& targetTime, bool ended);
20  bool getFillData(cond::persistency::Session& session, unsigned short fillId);
22  const boost::posix_time::ptime& beginFillTime,
23  const boost::posix_time::ptime& endFillTime);
25  const boost::posix_time::ptime& beginFillTime,
26  const boost::posix_time::ptime& endFillTime);
28  const boost::posix_time::ptime& beginFillTime,
29  const boost::posix_time::ptime& endFillTime);
31  const boost::posix_time::ptime& lowerTime,
32  const boost::posix_time::ptime& upperTime,
33  bool update);
34 
35 private:
36  bool m_debug;
37  // starting date for sampling
38  boost::posix_time::ptime m_startTime;
39  boost::posix_time::ptime m_endTime;
40  // sampling interval in seconds
41  unsigned int m_samplingInterval;
42  bool m_endFill = true;
44  //for reading from relational database source
47  std::unique_ptr<LHCInfo> m_fillPayload;
48  std::shared_ptr<LHCInfo> m_prevPayload;
49  std::vector<std::pair<cond::Time_t, std::shared_ptr<LHCInfo> > > m_tmpBuffer;
50  std::vector<std::shared_ptr<LHCInfo> > m_payloadBuffer;
51  bool m_lastPayloadEmpty = false;
52 };
53 
54 #endif
bool getFillData(cond::persistency::Session &session, unsigned short fillId)
boost::posix_time::ptime m_startTime
bool getCTTPSData(cond::persistency::Session &session, const boost::posix_time::ptime &beginFillTime, const boost::posix_time::ptime &endFillTime)
std::vector< std::pair< cond::Time_t, std::shared_ptr< LHCInfo > > > m_tmpBuffer
size_t getLumiData(cond::persistency::Session &session, const boost::posix_time::ptime &beginFillTime, const boost::posix_time::ptime &endFillTime)
std::unique_ptr< LHCInfo > m_fillPayload
bool getEcalData(cond::persistency::Session &session, const boost::posix_time::ptime &lowerTime, const boost::posix_time::ptime &upperTime, bool update)
std::shared_ptr< LHCInfo > m_prevPayload
bool getDipData(cond::persistency::Session &session, const boost::posix_time::ptime &beginFillTime, const boost::posix_time::ptime &endFillTime)
std::vector< std::shared_ptr< LHCInfo > > m_payloadBuffer
unsigned long long Time_t
Definition: Time.h:14
boost::posix_time::ptime m_endTime
#define update(a, b)
std::string id() const override
bool getNextFillData(cond::persistency::Session &session, const boost::posix_time::ptime &targetTime, bool ended)
LHCInfoPopConSourceHandler(const edm::ParameterSet &pset)