ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Event
EventInfo
src
PileUpTimeEventIndex.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "GaudiKernel/GaudiException.h"
6
#include "GaudiKernel/MsgStream.h"
7
#include "
EventInfo/PileUpTimeEventIndex.h
"
8
#include <cassert>
9
10
#include <iostream>
11
12
const
std::string&
13
PileUpTimeEventIndex::typeName
(
PileUpTimeEventIndex::PileUpType
typ) {
14
static
const
std::string typNam[
PileUpTimeEventIndex::NTYPES
+ 1] =
15
{
16
"Unknown"
/*-1*/
,
"Signal"
/*0*/
,
"MinimumBias"
/*1*/
,
"Cavern"
/*2*/
,
17
"HaloGas"
/*3*/
,
"HighPtMinimumBias"
/*4*/
,
"ZeroBias"
/*5*/
18
};
19
20
assert(typ <
PileUpTimeEventIndex::NTYPES
);
21
return
typNam[typ + 1];
22
}
23
24
PileUpTimeEventIndex::PileUpType
25
PileUpTimeEventIndex::ushortToType
(
unsigned
short
uType) {
26
PileUpTimeEventIndex::PileUpType
puType(
PileUpTimeEventIndex::Unknown
);
27
switch
(uType) {
28
case
0: puType =
PileUpTimeEventIndex::Signal
;
29
break
;
30
31
case
1: puType =
PileUpTimeEventIndex::MinimumBias
;
32
break
;
33
34
case
2: puType =
PileUpTimeEventIndex::Cavern
;
35
break
;
36
37
case
3: puType =
PileUpTimeEventIndex::HaloGas
;
38
break
;
39
40
case
4: puType =
PileUpTimeEventIndex::HighPtMinimumBias
;
41
break
;
42
43
case
5: puType =
PileUpTimeEventIndex::ZeroBias
;
44
break
;
45
46
default
:
47
std::ostringstream merr;
48
merr <<
49
"PileUpTimeEventIndex::ushortToType FATAL: invalid PileUpType specified "
50
<< uType;
51
std::cerr << merr.str() << std::endl;
52
throw
GaudiException(merr.str(),
"PileUpTimeEventIndex::ushortToType"
, StatusCode::FAILURE);
53
}
54
return
puType;
55
}
56
57
PileUpTimeEventIndex::PileUpTimeEventIndex
() :
m_time
(0),
m_index
(0),
m_type
(
PileUpTimeEventIndex
::
Unknown
) {}
58
59
PileUpTimeEventIndex::PileUpTimeEventIndex
(
time_type
time
) :
60
m_time
((short)
time
),
m_index
(0),
m_type
(
PileUpTimeEventIndex
::
Unknown
) {}
61
62
PileUpTimeEventIndex::PileUpTimeEventIndex
(
time_type
time
,
index_type
index
) :
63
m_time
((short)
time
),
m_index
((short)
index
),
m_type
(
PileUpTimeEventIndex
::
Unknown
) {}
64
65
PileUpTimeEventIndex::PileUpTimeEventIndex
(time_type time,
index_type
index
,
66
PileUpTimeEventIndex::PileUpType
typ) :
67
m_time((short) time), m_index((short)
index
), m_type(typ) {}
68
69
70
PileUpTimeEventIndex::time_type
71
PileUpTimeEventIndex::time
()
const
{
72
return
m_time
;
73
}
74
75
PileUpTimeEventIndex::index_type
76
PileUpTimeEventIndex::index
()
const
{
77
return
(
index_type
)
m_index
;
78
}
79
80
PileUpTimeEventIndex::PileUpType
81
PileUpTimeEventIndex::type
()
const
{
82
return
m_type
;
83
}
84
85
std::ostream&
86
operator <<
(std::ostream& os,
87
const
PileUpTimeEventIndex
& idx) {
88
return
os <<
"event xing time (ns): "
<< idx.time()
89
<<
" - PileUpEventInfo subevt index: "
<< idx.index()
90
<<
" - PileupEventInfo subevt type: "
<<
PileUpTimeEventIndex::typeName
(idx.type());
91
}
92
93
MsgStream&
94
operator <<
(MsgStream& os,
95
const
PileUpTimeEventIndex
& idx) {
96
return
os <<
"event xing time (ns): "
<< idx.time()
97
<<
" - PileUpEventInfo subevt index: "
<< idx.index()
98
<<
" - PileupEventInfo subevt type: "
<<
PileUpTimeEventIndex::typeName
(idx.type());
99
}
index_type
unsigned int index_type
Definition
FPGATrackSimSGToRawHitsTool.h:36
operator<<
std::ostream & operator<<(std::ostream &os, const PileUpTimeEventIndex &idx)
Definition
PileUpTimeEventIndex.cxx:86
PileUpTimeEventIndex.h
index
Definition
index.py:1
PileUpTimeEventIndex
a struct encapsulating the identifier of a pile-up event
Definition
PileUpTimeEventIndex.h:12
PileUpTimeEventIndex::index_type
unsigned long index_type
Definition
PileUpTimeEventIndex.h:25
PileUpTimeEventIndex::PileUpType
PileUpType
Definition
PileUpTimeEventIndex.h:14
PileUpTimeEventIndex::MinimumBias
@ MinimumBias
Definition
PileUpTimeEventIndex.h:17
PileUpTimeEventIndex::HaloGas
@ HaloGas
Definition
PileUpTimeEventIndex.h:19
PileUpTimeEventIndex::HighPtMinimumBias
@ HighPtMinimumBias
Definition
PileUpTimeEventIndex.h:20
PileUpTimeEventIndex::Unknown
@ Unknown
Definition
PileUpTimeEventIndex.h:15
PileUpTimeEventIndex::Signal
@ Signal
Definition
PileUpTimeEventIndex.h:16
PileUpTimeEventIndex::ZeroBias
@ ZeroBias
Definition
PileUpTimeEventIndex.h:21
PileUpTimeEventIndex::Cavern
@ Cavern
Definition
PileUpTimeEventIndex.h:18
PileUpTimeEventIndex::NTYPES
@ NTYPES
Definition
PileUpTimeEventIndex.h:22
PileUpTimeEventIndex::index
index_type index() const
the index of the component event in PileUpEventInfo
Definition
PileUpTimeEventIndex.cxx:76
PileUpTimeEventIndex::ushortToType
static PileUpType ushortToType(unsigned short)
Definition
PileUpTimeEventIndex.cxx:25
PileUpTimeEventIndex::m_index
short m_index
Definition
PileUpTimeEventIndex.h:43
PileUpTimeEventIndex::time_type
long time_type
Definition
PileUpTimeEventIndex.h:24
PileUpTimeEventIndex::m_type
PileUpType m_type
Definition
PileUpTimeEventIndex.h:44
PileUpTimeEventIndex::type
PileUpType type() const
the pileup type - minbias, cavern, beam halo, signal?
Definition
PileUpTimeEventIndex.cxx:81
PileUpTimeEventIndex::time
time_type time() const
bunch xing time in ns
Definition
PileUpTimeEventIndex.cxx:71
PileUpTimeEventIndex::m_time
short m_time
Definition
PileUpTimeEventIndex.h:42
PileUpTimeEventIndex::typeName
static const std::string & typeName(PileUpType typ)
Definition
PileUpTimeEventIndex.cxx:13
PileUpTimeEventIndex::PileUpTimeEventIndex
PileUpTimeEventIndex()
Definition
PileUpTimeEventIndex.cxx:57
Generated on
for ATLAS Offline Software by
1.17.0