CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EventAuxiliary.h
Go to the documentation of this file.
1 #ifndef DataFormats_Provenance_EventAuxiliary_h
2 #define DataFormats_Provenance_EventAuxiliary_h
3 
4 #include <iosfwd>
5 
9 
10 // Auxiliary event data that is persistent
11 
12 namespace edm {
13  class EventAux;
15  public:
16  friend void conversion(EventAux const&, EventAuxiliary&);
17  // Updated on 9 Feb. '09 on a request from Emelio Meschi
19  Undefined = 0,
23  Reserved = 4,
27  };
28  static int const invalidBunchXing = -1;
29  static int const invalidStoreNumber = 0;
32  id_(),
33  processGUID_(),
34  time_(),
35  luminosityBlock_(0U),
41  EventAuxiliary(EventID const& theId, std::string const& theProcessGUID, Timestamp const& theTime,
42  bool isReal, ExperimentType eType = Undefined,
43  int bunchXing = invalidBunchXing, int storeNum = invalidStoreNumber,
44  int orbitNum = invalidBunchXing) :
46  id_(theId),
47  processGUID_(theProcessGUID),
48  time_(theTime),
49  luminosityBlock_(0U),
50  isRealData_(isReal),
51  experimentType_(eType),
52  bunchCrossing_(bunchXing),
53  orbitNumber_(orbitNum),
54  storeNumber_(storeNum) {}
56  void write(std::ostream& os) const;
59  EventID const& id() const {return id_;}
60  EventID& id() {return id_;}
61  std::string const& processGUID() const {return processGUID_;}
62  Timestamp const& time() const {return time_;}
66  EventNumber_t event() const {return id_.event();}
67  RunNumber_t run() const {return id_.run();}
68  bool isRealData() const {return isRealData_;}
70  int bunchCrossing() const {return bunchCrossing_;}
71  int orbitNumber() const {return orbitNumber_;}
72  int storeNumber() const {return storeNumber_;}
73 
74  private:
75  // Process history ID of the full process history (not the reduced process history)
77  // Event ID
79  // Globally unique process ID of process that created event.
81  // Time from DAQ
83  // Associated Luminosity Block identifier (obsolete. for backward compatibility only)
85  // Is this real data (i.e. not simulated)
87  // Something descriptive of the source of the data
89  // The bunch crossing number
91  // The orbit number
93  // The LHC store number
95  };
96 
97  bool
99 
100  inline
101  std::ostream&
102  operator<<(std::ostream& os, const EventAuxiliary& p) {
103  p.write(os);
104  return os;
105  }
106 
107 }
108 
109 #endif
RunNumber_t run() const
Definition: EventID.h:42
EventAuxiliary(EventID const &theId, std::string const &theProcessGUID, Timestamp const &theTime, bool isReal, ExperimentType eType=Undefined, int bunchXing=invalidBunchXing, int storeNum=invalidStoreNumber, int orbitNum=invalidBunchXing)
EventNumber_t event() const
Definition: EventID.h:44
void write(std::ostream &os) const
bool isRealData() const
bool isSameEvent(EventAuxiliary const &a, EventAuxiliary const &b)
ExperimentType experimentType_
ProcessHistoryID processHistoryID_
std::string const & processGUID() const
unsigned int EventNumber_t
Definition: EventID.h:30
friend void conversion(EventAux const &, EventAuxiliary &)
Timestamp const & time() const
RunNumber_t run() const
LuminosityBlockNumber_t luminosityBlock_
LuminosityBlockNumber_t luminosityBlock() const
Definition: EventID.h:43
unsigned int LuminosityBlockNumber_t
Definition: EventID.h:31
int bunchCrossing() const
LuminosityBlockNumber_t luminosityBlock() const
ExperimentType experimentType() const
static int const invalidBunchXing
int storeNumber() const
int orbitNumber() const
LuminosityBlockNumber_t oldLuminosityBlock() const
std::string processGUID_
double b
Definition: hdecay.h:120
void setProcessHistoryID(ProcessHistoryID const &phid)
ProcessHistoryID const & processHistoryID() const
EventID const & id() const
static int const invalidStoreNumber
double a
Definition: hdecay.h:121
unsigned int RunNumber_t
Definition: EventRange.h:32
volatile std::atomic< bool > shutdown_flag false
std::ostream & operator<<(std::ostream &ost, const HLTGlobalStatus &hlt)
Formatted printout of trigger tbale.
EventNumber_t event() const