Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework
master (f31105fd)
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
h
i
l
m
o
p
r
s
t
u
v
w
x
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerations
a
c
d
e
f
i
l
m
n
o
p
q
r
s
t
v
Enumerator
a
b
c
d
e
f
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Properties
Related Functions
:
a
b
c
d
e
g
h
i
m
o
p
r
s
t
v
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
_
b
c
e
f
g
h
i
l
m
n
o
p
r
s
t
u
z
Variables
a
b
c
d
e
g
h
i
m
o
p
q
r
s
t
v
x
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
w
Enumerations
Enumerator
c
e
f
p
u
v
Macros
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
EventIDBase.cpp
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2024 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
\***********************************************************************************/
20
#include <
GaudiKernel/EventIDBase.h
>
21
22
#include <limits>
23
24
const
EventIDBase::number_type
EventIDBase::UNDEFNUM
=
std::numeric_limits<EventIDBase::number_type>::max
();
25
const
EventIDBase::event_number_t
EventIDBase::UNDEFEVT
=
std::numeric_limits<EventIDBase::event_number_t>::max
();
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 ) {
35
if
(
m_run_number
!=
UNDEFNUM
&&
m_event_number
!=
UNDEFEVT
)
setRE
();
36
37
if
(
m_time_stamp
!=
UNDEFNUM
) {
38
setTS
();
39
if
(
m_time_stamp_ns_offset
==
UNDEFNUM
)
m_time_stamp_ns_offset
= 0;
40
}
41
42
if
(
m_lumi_block
!=
UNDEFNUM
&&
m_event_number
!=
UNDEFEVT
)
setLE
();
43
44
if
(
m_run_number
!=
UNDEFNUM
&&
m_lumi_block
!=
UNDEFNUM
)
setRL
();
45
}
46
47
EventIDBase::EventIDBase
(
std::tuple<number_type, number_type, event_number_t>
run_lumi_ev,
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 ) {}
EventIDBase::event_number_t
uint64_t event_number_t
Definition:
EventIDBase.h:69
EventIDBase::m_time_stamp_ns_offset
number_type m_time_stamp_ns_offset
time stamp ns - ns time offset for time_stamp, 32 bit unsigned
Definition:
EventIDBase.h:202
EventIDBase::m_run_number
number_type m_run_number
run number
Definition:
EventIDBase.h:193
EventIDBase::setLE
void setLE()
Definition:
EventIDBase.h:189
EventIDBase::EventIDBase
EventIDBase()
Definition:
EventIDBase.h:79
GaudiPartProp.decorators.get
get
decorate the vector of properties
Definition:
decorators.py:283
std::tuple
EventIDBase::UNDEFEVT
static const event_number_t UNDEFEVT
Definition:
EventIDBase.h:72
EventIDBase::UNDEFNUM
static const number_type UNDEFNUM
Definition:
EventIDBase.h:71
EventIDBase::m_lumi_block
number_type m_lumi_block
luminosity block number: the number which uniquely tags a luminosity block within a run
Definition:
EventIDBase.h:206
EventIDBase::m_event_number
event_number_t m_event_number
event number
Definition:
EventIDBase.h:196
EventIDBase::number_type
unsigned int number_type
Definition:
EventIDBase.h:68
EventIDBase.h
This class provides a unique identification for each event, in terms of run/event number and/or a tim...
EventIDBase::setRL
void setRL()
Definition:
EventIDBase.h:190
std
STL namespace.
EventIDBase::setRE
void setRE()
Definition:
EventIDBase.h:187
EventIDBase
This class provides a unique identification for each event, in terms of run/event number and/or a tim...
Definition:
EventIDBase.h:66
EventIDBase::setTS
void setTS()
Definition:
EventIDBase.h:188
std::numeric_limits::max
T max(T... args)
EventIDBase::m_time_stamp
number_type m_time_stamp
posix time in seconds since 1970/01/01
Definition:
EventIDBase.h:199
GaudiKernel
src
Lib
EventIDBase.cpp
Generated on Mon Apr 7 2025 16:26:23 for The Gaudi Framework by
1.8.18