CMS 3D CMS Logo

LuminosityBlockAuxiliary.h
Go to the documentation of this file.
1 #ifndef DataFormats_Provenance_LuminosityBlockAuxiliary_h
2 #define DataFormats_Provenance_LuminosityBlockAuxiliary_h
3 
4 #include <iosfwd>
5 
10 
11 // Auxiliary luminosity block data that is persistent
12 
13 namespace edm {
14  class LuminosityBlockAux;
16  public:
19  LuminosityBlockAuxiliary(LuminosityBlockID const& theId, Timestamp const& theTime, Timestamp const& theEndTime)
20  : processHistoryID_(), id_(theId), beginTime_(theTime), endTime_(theEndTime) {}
22  LuminosityBlockNumber_t const& theLumi,
23  Timestamp const& theTime,
24  Timestamp const& theEndTime)
25  : processHistoryID_(), id_(theRun, theLumi), beginTime_(theTime), endTime_(theEndTime) {}
27  void write(std::ostream& os) const;
31  RunNumber_t run() const { return id().run(); }
32  LuminosityBlockID const& id() const { return id_; }
33  LuminosityBlockID& id() { return id_; }
34  Timestamp const& beginTime() const { return beginTime_; }
35  void setBeginTime(Timestamp const& time) {
37  beginTime_ = time;
38  }
39  Timestamp const& endTime() const { return endTime_; }
40  void setEndTime(Timestamp const& time) {
42  endTime_ = time;
43  }
44  void mergeAuxiliary(LuminosityBlockAuxiliary const& newAux);
45 
46  bool sameIdentity(LuminosityBlockAuxiliary const& iRHS) const {
47  return iRHS.processHistoryID_ == processHistoryID_ && iRHS.id_ == id_;
48  }
49 
50  private:
51  // This is the ID of the full process history (not the reduced process history).
52  // In cases where LuminosityBlock's are merged, the ID of the first process history encountered
53  // is stored here.
55  // LuminosityBlock ID
57  // Times from DAQ
60  };
61 
62  inline std::ostream& operator<<(std::ostream& os, const LuminosityBlockAuxiliary& p) {
63  p.write(os);
64  return os;
65  }
66 
67 } // namespace edm
68 #endif
edm::LuminosityBlockAuxiliary::run
RunNumber_t run() const
Definition: LuminosityBlockAuxiliary.h:31
edm::RunNumber_t
unsigned int RunNumber_t
Definition: RunLumiEventNumber.h:14
ProcessHistoryID.h
edm::LuminosityBlockAuxiliary::setBeginTime
void setBeginTime(Timestamp const &time)
Definition: LuminosityBlockAuxiliary.h:35
edm
HLT enums.
Definition: AlignableModifier.h:19
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
edm::LuminosityBlockNumber_t
unsigned int LuminosityBlockNumber_t
Definition: RunLumiEventNumber.h:13
LuminosityBlockID.h
edm::LuminosityBlockAuxiliary::write
void write(std::ostream &os) const
Definition: LuminosityBlockAuxiliary.cc:10
edm::LuminosityBlockAuxiliary::id_
LuminosityBlockID id_
Definition: LuminosityBlockAuxiliary.h:56
edm::LuminosityBlockAuxiliary
Definition: LuminosityBlockAuxiliary.h:15
edm::operator<<
std::ostream & operator<<(std::ostream &ost, const HLTGlobalStatus &hlt)
Formatted printout of trigger tbale.
Definition: HLTGlobalStatus.h:106
edm::LuminosityBlockAuxiliary::mergeAuxiliary
void mergeAuxiliary(LuminosityBlockAuxiliary const &newAux)
Definition: LuminosityBlockAuxiliary.cc:15
edm::LuminosityBlockAuxiliary::setEndTime
void setEndTime(Timestamp const &time)
Definition: LuminosityBlockAuxiliary.h:40
edm::LuminosityBlockAuxiliary::id
LuminosityBlockID const & id() const
Definition: LuminosityBlockAuxiliary.h:32
edm::Hash< ProcessHistoryType >
edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary
LuminosityBlockAuxiliary(RunNumber_t const &theRun, LuminosityBlockNumber_t const &theLumi, Timestamp const &theTime, Timestamp const &theEndTime)
Definition: LuminosityBlockAuxiliary.h:21
edm::LuminosityBlockID
Definition: LuminosityBlockID.h:31
edm::LuminosityBlockAuxiliary::processHistoryID
ProcessHistoryID const & processHistoryID() const
Definition: LuminosityBlockAuxiliary.h:28
edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary
LuminosityBlockAuxiliary()
Definition: LuminosityBlockAuxiliary.h:18
Timestamp.h
edm::LuminosityBlockAuxiliary::beginTime_
Timestamp beginTime_
Definition: LuminosityBlockAuxiliary.h:58
edm::LuminosityBlockAuxiliary::sameIdentity
bool sameIdentity(LuminosityBlockAuxiliary const &iRHS) const
Definition: LuminosityBlockAuxiliary.h:46
edm::LuminosityBlockID::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: LuminosityBlockID.h:42
edm::LuminosityBlockAuxiliary::endTime
Timestamp const & endTime() const
Definition: LuminosityBlockAuxiliary.h:39
edm::LuminosityBlockAuxiliary::conversion
friend void conversion(LuminosityBlockAux const &, LuminosityBlockAuxiliary &)
Definition: LuminosityBlockAux.cc:11
edm::LuminosityBlockAuxiliary::id
LuminosityBlockID & id()
Definition: LuminosityBlockAuxiliary.h:33
edm::LuminosityBlockAux
Definition: LuminosityBlockAux.h:13
edm::Timestamp::invalidTimestamp
static Timestamp invalidTimestamp()
Definition: Timestamp.h:82
edm::LuminosityBlockAuxiliary::endTime_
Timestamp endTime_
Definition: LuminosityBlockAuxiliary.h:59
edm::LuminosityBlockAuxiliary::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: LuminosityBlockAuxiliary.h:30
edm::LuminosityBlockAuxiliary::processHistoryID_
ProcessHistoryID processHistoryID_
Definition: LuminosityBlockAuxiliary.h:54
edm::LuminosityBlockID::run
RunNumber_t run() const
Definition: LuminosityBlockID.h:41
edm::LuminosityBlockAuxiliary::setProcessHistoryID
void setProcessHistoryID(ProcessHistoryID const &phid)
Definition: LuminosityBlockAuxiliary.h:29
edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary
LuminosityBlockAuxiliary(LuminosityBlockID const &theId, Timestamp const &theTime, Timestamp const &theEndTime)
Definition: LuminosityBlockAuxiliary.h:19
edm::LuminosityBlockAuxiliary::~LuminosityBlockAuxiliary
~LuminosityBlockAuxiliary()
Definition: LuminosityBlockAuxiliary.h:26
ntuplemaker.time
time
Definition: ntuplemaker.py:310
edm::LuminosityBlockAuxiliary::beginTime
Timestamp const & beginTime() const
Definition: LuminosityBlockAuxiliary.h:34
RunID.h
edm::Timestamp
Definition: Timestamp.h:30