CMS 3D CMS Logo

DCUIOV.h
Go to the documentation of this file.
1 #ifndef DCUIOV_H
2 #define DCUIOV_H
3 
4 #include <stdexcept>
5 #include <iostream>
6 
10 
11 typedef int run_t;
12 
13 class DCUIOV : public IIOV {
14 public:
15  friend class EcalCondDBInterface;
16 
17  DCUIOV();
18  ~DCUIOV() override;
19 
20  // Methods for user data
21  void setSince(const Tm& since);
22  Tm getSince() const;
23  void setTill(const Tm& till);
24  Tm getTill() const;
25  void setDCUTag(const DCUTag& tag);
26  DCUTag getDCUTag() const;
27 
28  // Methods from IUniqueDBObject
29  int getID() { return m_ID; };
30  int fetchID() noexcept(false) override;
31  void setByID(int id) noexcept(false) override;
32 
33  // Operators
34  inline bool operator==(const DCUIOV& m) const {
35  return (m_dcuTag == m.m_dcuTag && m_since == m.m_since && m_till == m.m_till);
36  }
37 
38  inline bool operator!=(const DCUIOV& m) const { return !(*this == m); }
39 
40 private:
41  // User data for this IOV
45 
46  int writeDB() noexcept(false);
47  void setByTm(DCUTag* tag, const Tm& time) noexcept(false);
48 };
49 
50 #endif
EcalCondDBInterface
Definition: EcalCondDBInterface.h:37
DCUIOV::getDCUTag
DCUTag getDCUTag() const
Definition: DCUIOV.cc:46
IUniqueDBObject::m_ID
int m_ID
Definition: IUniqueDBObject.h:18
funct::false
false
Definition: Factorize.h:29
DCUIOV::m_dcuTag
DCUTag m_dcuTag
Definition: DCUIOV.h:44
run_t
int run_t
Definition: DCUIOV.h:11
DCUIOV
Definition: DCUIOV.h:13
protons_cff.time
time
Definition: protons_cff.py:39
DCUIOV::setByID
void setByID(int id) noexcept(false) override
Definition: DCUIOV.cc:93
watchdog.const
const
Definition: watchdog.py:83
DCUIOV::getTill
Tm getTill() const
Definition: DCUIOV.cc:37
Utilities.operator
operator
Definition: Utilities.py:24
DCUIOV::fetchID
int fetchID() noexcept(false) override
Definition: DCUIOV.cc:48
DCUIOV::m_since
Tm m_since
Definition: DCUIOV.h:42
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
DCUIOV::setDCUTag
void setDCUTag(const DCUTag &tag)
Definition: DCUIOV.cc:39
DCUIOV::~DCUIOV
~DCUIOV() override
Definition: DCUIOV.cc:19
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
IIOV
Definition: IIOV.h:11
writeEcalDQMStatus.since
since
Definition: writeEcalDQMStatus.py:53
Tm
Definition: Tm.h:13
ntuplemaker.till
till
Definition: ntuplemaker.py:198
IIOV.h
DCUTag.h
DCUIOV::getID
int getID()
Definition: DCUIOV.h:29
DCUIOV::DCUIOV
DCUIOV()
Definition: DCUIOV.cc:12
Tm.h
DCUIOV::setSince
void setSince(const Tm &since)
Definition: DCUIOV.cc:21
DCUIOV::operator!=
bool operator!=(const DCUIOV &m) const
Definition: DCUIOV.h:38
DCUIOV::getSince
Tm getSince() const
Definition: DCUIOV.cc:28
DCUIOV::setTill
void setTill(const Tm &till)
Definition: DCUIOV.cc:30
DCUIOV::setByTm
void setByTm(DCUTag *tag, const Tm &time) noexcept(false)
Definition: DCUIOV.cc:173
DCUIOV::m_till
Tm m_till
Definition: DCUIOV.h:43
DCUIOV::writeDB
int writeDB() noexcept(false)
Definition: DCUIOV.cc:126
DCUTag
Definition: DCUTag.h:13