The Gaudi Framework  v33r0 (d5ea422b)
EventIDBase.cpp
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2019 CERN for the benefit of the LHCb and ATLAS collaborations *
3 * *
4 * This software is distributed under the terms of the Apache version 2 licence, *
5 * copied verbatim in the file "LICENSE". *
6 * *
7 * In applying this licence, CERN does not waive the privileges and immunities *
8 * granted to it by virtue of its status as an Intergovernmental Organization *
9 * or submit itself to any jurisdiction. *
10 \***********************************************************************************/
21 
22 #include <limits>
23 
26 
27 EventIDBase::EventIDBase( number_type run_number, event_number_t event_number, number_type time_stamp,
28  number_type time_stamp_ns_offset, number_type lumi_block, number_type bunch_crossing_id )
29  : m_run_number( run_number )
30  , m_event_number( event_number )
31  , m_time_stamp( time_stamp )
32  , m_time_stamp_ns_offset( time_stamp_ns_offset )
33  , m_lumi_block( lumi_block )
34  , m_bunch_crossing_id( bunch_crossing_id ) {
36 
37  if ( m_time_stamp != UNDEFNUM ) {
38  setTS();
40  }
41 
43 
45 }
46 
48  std::tuple<number_type, number_type> time_stamp, number_type bunch_crossing_id )
49  : EventIDBase( std::get<0>( run_lumi_ev ), // run number
50  std::get<2>( run_lumi_ev ), // event number
51  std::get<0>( time_stamp ), // timestamp in seconds
52  std::get<1>( time_stamp ), // nanoseconds offst
53  std::get<1>( run_lumi_ev ), // lumi block
54  bunch_crossing_id ) {}
static const number_type UNDEFNUM
Definition: EventIDBase.h:71
void setLE()
Definition: EventIDBase.h:189
number_type m_time_stamp_ns_offset
time stamp ns - ns time offset for time_stamp, 32 bit unsigned
Definition: EventIDBase.h:202
STL namespace.
void setRE()
Definition: EventIDBase.h:187
event_number_t m_event_number
event number
Definition: EventIDBase.h:196
auto get(const Handle &handle, const Algo &, const EventContext &) -> decltype(details::deref(handle.get()))
void setRL()
Definition: EventIDBase.h:190
number_type m_time_stamp
posix time in seconds since 1970/01/01
Definition: EventIDBase.h:199
number_type m_lumi_block
luminosity block number: the number which uniquely tags a luminosity block within a run
Definition: EventIDBase.h:206
This class provides a unique identification for each event, in terms of run/event number and/or a tim...
number_type m_run_number
run number
Definition: EventIDBase.h:193
T max(T... args)
uint64_t event_number_t
Definition: EventIDBase.h:69
This class provides a unique identification for each event, in terms of run/event number and/or a tim...
Definition: EventIDBase.h:66
unsigned int number_type
Definition: EventIDBase.h:68
static const event_number_t UNDEFEVT
Definition: EventIDBase.h:72
void setTS()
Definition: EventIDBase.h:188