ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigMonitoringEvent
TrigMonitoringEvent
TrigMonL1Item.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGMON_L1ITEM_H
6
#define TRIGMON_L1ITEM_H
7
14
15
// Framework
16
#include "
AthenaKernel/CLASS_DEF.h
"
17
18
// C/C++
19
#include <stdint.h>
20
21
// Local
22
#include "
TrigMonitoringEvent/TrigConfChain.h
"
23
24
class
TrigMonL1Item
25
{
26
public
:
27
28
enum
Decision
{
29
kReset
= 0x0,
30
kPassed
= 0x6000,
// not stored
31
kPrescaled
= 0x5000,
// not stored
32
kL1AfterVeto
= 0x4000,
33
kL1BeforePrescale
= 0x2000,
34
kL1AfterPrescale
= 0x1000
35
};
36
37
TrigMonL1Item
();
38
explicit
TrigMonL1Item
(uint16_t encoded);
39
~TrigMonL1Item
() =
default
;
40
41
void
setCtpId
(
unsigned
int
ctpid);
42
void
addDecision
(
Decision
value);
43
44
uint16_t
getCtpId
()
const
;
45
uint16_t
getEncoded
()
const
{
return
m_encoded
; }
46
uint16_t
getCounter
()
const
{
return
getCtpId
(); }
47
uint16_t
getEncodedId
()
const
;
48
49
bool
isPassed
(
Decision
value)
const
;
50
51
bool
isPassedBeforePrescale
()
const
{
return
isPassed
(
kL1BeforePrescale
); }
52
bool
isPassedAfterPrescale
()
const
{
return
isPassed
(
kL1AfterPrescale
); }
53
bool
isPassedAfterVeto
()
const
{
return
isPassed
(
kL1AfterVeto
); }
54
bool
isPassed
()
const
{
return
isPassedAfterVeto
(); }
55
bool
isPrescaled
()
const
{
return
isPassedBeforePrescale
() && !
isPassedAfterPrescale
(); }
56
bool
isVeto
()
const
{
return
isPassedAfterPrescale
() && !
isPassedAfterVeto
(); }
57
58
void
print
(std::ostream &os = std::cout)
const
;
59
60
private
:
61
62
uint16_t
m_encoded
;
// Encoded ctp id and decisions
63
};
64
65
std::string
str
(
const
TrigMonL1Item
&);
66
67
//
68
// m_encoded stores encoded ctp id and decisions
69
//
70
// m_encoded = adddcccccccccccc
71
//
72
// ctp id [c] low 12 bits
73
// decision [d] mid 3 bits
74
// available [a] top 1 bit
75
//
76
77
//
78
// Inlined member and global functions
79
//
80
inline
uint16_t
TrigMonL1Item::getEncodedId
()
const
81
{
82
return
Trig::getEncodedId
(1,
getCounter
());
83
}
84
85
inline
bool
operator==
(
const
TrigMonL1Item
&lhs,
const
TrigMonL1Item
&rhs) {
86
return
lhs.
getEncodedId
() == rhs.
getEncodedId
();
87
}
88
inline
bool
operator <
(
const
TrigMonL1Item
&lhs,
const
TrigMonL1Item
&rhs) {
89
return
lhs.
getEncodedId
() < rhs.
getEncodedId
();
90
}
91
92
inline
bool
operator==
(
const
TrigMonL1Item
&d,
const
TrigConfChain
&c) {
93
return
d.getEncodedId() == c.getEncodedId();
94
}
95
inline
bool
operator==
(
const
TrigConfChain
&c,
const
TrigMonL1Item
&d) {
96
return
d.getEncodedId() == c.getEncodedId();
97
}
98
99
CLASS_DEF
(
TrigMonL1Item
, 98029077 , 1 )
100
101
#endif
CLASS_DEF.h
macros to associate a CLID to a type
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition
Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
Decision
xAOD::TrigComposite Decision
Definition
TrigComposite.h:20
TrigConfChain.h
operator<
bool operator<(const TrigMonL1Item &lhs, const TrigMonL1Item &rhs)
Definition
TrigMonL1Item.h:88
operator==
bool operator==(const TrigMonL1Item &lhs, const TrigMonL1Item &rhs)
Definition
TrigMonL1Item.h:85
TrigConfChain
Definition
TrigConfChain.h:33
TrigMonL1Item
Encoded L1 decision for one item.
Definition
TrigMonL1Item.h:25
TrigMonL1Item::print
void print(std::ostream &os=std::cout) const
Definition
TrigMonL1Item.cxx:79
TrigMonL1Item::getCtpId
uint16_t getCtpId() const
Definition
TrigMonL1Item.cxx:58
TrigMonL1Item::Decision
Decision
Definition
TrigMonL1Item.h:28
TrigMonL1Item::kL1BeforePrescale
@ kL1BeforePrescale
Definition
TrigMonL1Item.h:33
TrigMonL1Item::kPrescaled
@ kPrescaled
Definition
TrigMonL1Item.h:31
TrigMonL1Item::kL1AfterPrescale
@ kL1AfterPrescale
Definition
TrigMonL1Item.h:34
TrigMonL1Item::kL1AfterVeto
@ kL1AfterVeto
Definition
TrigMonL1Item.h:32
TrigMonL1Item::kReset
@ kReset
Definition
TrigMonL1Item.h:29
TrigMonL1Item::kPassed
@ kPassed
Definition
TrigMonL1Item.h:30
TrigMonL1Item::isPassedBeforePrescale
bool isPassedBeforePrescale() const
Definition
TrigMonL1Item.h:51
TrigMonL1Item::isPassed
bool isPassed() const
Definition
TrigMonL1Item.h:54
TrigMonL1Item::isPrescaled
bool isPrescaled() const
Definition
TrigMonL1Item.h:55
TrigMonL1Item::getEncodedId
uint16_t getEncodedId() const
Definition
TrigMonL1Item.h:80
TrigMonL1Item::addDecision
void addDecision(Decision value)
Definition
TrigMonL1Item.cxx:46
TrigMonL1Item::getEncoded
uint16_t getEncoded() const
Definition
TrigMonL1Item.h:45
TrigMonL1Item::isVeto
bool isVeto() const
Definition
TrigMonL1Item.h:56
TrigMonL1Item::isPassedAfterPrescale
bool isPassedAfterPrescale() const
Definition
TrigMonL1Item.h:52
TrigMonL1Item::TrigMonL1Item
TrigMonL1Item()
Definition
TrigMonL1Item.cxx:18
TrigMonL1Item::isPassedAfterVeto
bool isPassedAfterVeto() const
Definition
TrigMonL1Item.h:53
TrigMonL1Item::~TrigMonL1Item
~TrigMonL1Item()=default
TrigMonL1Item::m_encoded
uint16_t m_encoded
Definition
TrigMonL1Item.h:62
TrigMonL1Item::getCounter
uint16_t getCounter() const
Definition
TrigMonL1Item.h:46
TrigMonL1Item::setCtpId
void setCtpId(unsigned int ctpid)
Definition
TrigMonL1Item.cxx:30
Trig::getEncodedId
uint16_t getEncodedId(int level, int counter)
Definition
TrigConfChain.cxx:13
str
Definition
BTagTrackIpAccessor.cxx:11
Generated on
for ATLAS Offline Software by
1.17.0