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) {}
23  Timestamp const& theTime,
24  Timestamp const& theEndTime)
25  : processHistoryID_(), id_(theRun, theLumi), beginTime_(theTime), endTime_(theEndTime) {}
31  void write(std::ostream& os) const;
35  RunNumber_t run() const { return id().run(); }
36  LuminosityBlockID const& id() const { return id_; }
37  LuminosityBlockID& id() { return id_; }
38  Timestamp const& beginTime() const { return beginTime_; }
39  void setBeginTime(Timestamp const& time) {
41  beginTime_ = time;
42  }
43  Timestamp const& endTime() const { return endTime_; }
44  void setEndTime(Timestamp const& time) {
46  endTime_ = time;
47  }
48  void mergeAuxiliary(LuminosityBlockAuxiliary const& newAux);
49 
50  bool sameIdentity(LuminosityBlockAuxiliary const& iRHS) const {
51  return iRHS.processHistoryID_ == processHistoryID_ && iRHS.id_ == id_;
52  }
53 
54  private:
55  // This is the ID of the full process history (not the reduced process history).
56  // In cases where LuminosityBlock's are merged, the ID of the first process history encountered
57  // is stored here.
59  // LuminosityBlock ID
61  // Times from DAQ
64  };
65 
66  inline std::ostream& operator<<(std::ostream& os, const LuminosityBlockAuxiliary& p) {
67  p.write(os);
68  return os;
69  }
70 
71 } // namespace edm
72 #endif
edm::LuminosityBlockAuxiliary::run
RunNumber_t run() const
Definition: LuminosityBlockAuxiliary.h:35
edm::RunNumber_t
unsigned int RunNumber_t
Definition: RunLumiEventNumber.h:14
ProcessHistoryID.h
edm::LuminosityBlockAuxiliary::setBeginTime
void setBeginTime(Timestamp const &time)
Definition: LuminosityBlockAuxiliary.h:39
edm
HLT enums.
Definition: AlignableModifier.h:19
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
submitPVResolutionJobs.theLumi
string theLumi
Definition: submitPVResolutionJobs.py:383
protons_cff.time
time
Definition: protons_cff.py:39
edm::LuminosityBlockAuxiliary::operator=
LuminosityBlockAuxiliary & operator=(LuminosityBlockAuxiliary &&)=default
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:60
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:44
edm::LuminosityBlockAuxiliary::id
LuminosityBlockID const & id() const
Definition: LuminosityBlockAuxiliary.h:36
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:32
edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary
LuminosityBlockAuxiliary()
Definition: LuminosityBlockAuxiliary.h:18
Timestamp.h
edm::LuminosityBlockAuxiliary::beginTime_
Timestamp beginTime_
Definition: LuminosityBlockAuxiliary.h:62
edm::LuminosityBlockAuxiliary::sameIdentity
bool sameIdentity(LuminosityBlockAuxiliary const &iRHS) const
Definition: LuminosityBlockAuxiliary.h:50
edm::LuminosityBlockID::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: LuminosityBlockID.h:42
edm::LuminosityBlockAuxiliary::endTime
Timestamp const & endTime() const
Definition: LuminosityBlockAuxiliary.h:43
edm::LuminosityBlockAuxiliary::conversion
friend void conversion(LuminosityBlockAux const &, LuminosityBlockAuxiliary &)
Definition: LuminosityBlockAux.cc:11
edm::LuminosityBlockAuxiliary::id
LuminosityBlockID & id()
Definition: LuminosityBlockAuxiliary.h:37
edm::LuminosityBlockAux
Definition: LuminosityBlockAux.h:13
edm::Timestamp::invalidTimestamp
static Timestamp invalidTimestamp()
Definition: Timestamp.h:82
edm::LuminosityBlockAuxiliary::endTime_
Timestamp endTime_
Definition: LuminosityBlockAuxiliary.h:63
edm::LuminosityBlockAuxiliary::luminosityBlock
LuminosityBlockNumber_t luminosityBlock() const
Definition: LuminosityBlockAuxiliary.h:34
edm::LuminosityBlockAuxiliary::processHistoryID_
ProcessHistoryID processHistoryID_
Definition: LuminosityBlockAuxiliary.h:58
edm::LuminosityBlockID::run
RunNumber_t run() const
Definition: LuminosityBlockID.h:41
edm::LuminosityBlockAuxiliary::setProcessHistoryID
void setProcessHistoryID(ProcessHistoryID const &phid)
Definition: LuminosityBlockAuxiliary.h:33
edm::LuminosityBlockAuxiliary::LuminosityBlockAuxiliary
LuminosityBlockAuxiliary(LuminosityBlockID const &theId, Timestamp const &theTime, Timestamp const &theEndTime)
Definition: LuminosityBlockAuxiliary.h:19
edm::LuminosityBlockAuxiliary::~LuminosityBlockAuxiliary
~LuminosityBlockAuxiliary()
Definition: LuminosityBlockAuxiliary.h:28
edm::LuminosityBlockAuxiliary::beginTime
Timestamp const & beginTime() const
Definition: LuminosityBlockAuxiliary.h:38
RunID.h
edm::Timestamp
Definition: Timestamp.h:30