ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigMonitoringEvent
src
TrigMonL1Item.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// C/C++
6
#include <sstream>
7
8
#include "
AthenaKernel/errorcheck.h
"
9
#include "
TrigMonitoringEvent/TrigMonL1Item.h
"
10
11
namespace
L1Bits
12
{
13
const
uint32_t
maskCtpId
= 0x0fff;
// mask ctpid bits
14
//const uint32_t maskDecis = 0x7000; // mask decision bits
15
}
16
17
//--------------------------------------------------------------------------------------
18
TrigMonL1Item::TrigMonL1Item
()
19
:
m_encoded
(0x0)
20
{
21
}
22
23
//--------------------------------------------------------------------------------------
24
TrigMonL1Item::TrigMonL1Item
(uint16_t encoded)
25
:
m_encoded
(encoded)
26
{
27
}
28
29
//--------------------------------------------------------------------------------------
30
void
TrigMonL1Item::setCtpId
(
unsigned
int
ctpid)
31
{
32
//
33
// Set ctp id
34
//
35
if
(ctpid < 4096) {
36
m_encoded
=
m_encoded
& (
~L1Bits
::maskCtpId);
37
m_encoded
|= ctpid;
38
}
39
else
{
40
REPORT_MESSAGE_WITH_CONTEXT
(MSG::ERROR,
"TrigMonL1Item"
)
41
<<
"setCtpId error! Bad ctp id"
;
42
}
43
}
44
45
//--------------------------------------------------------------------------------------
46
void
TrigMonL1Item::addDecision
(
Decision
value)
47
{
48
//
49
// Set trigger decision bits
50
//
51
if
(value ==
kReset
) {
m_encoded
=
getCtpId
(); }
52
else
if
(value ==
kL1AfterVeto
) {
m_encoded
|= value; }
53
else
if
(value ==
kL1BeforePrescale
) {
m_encoded
|= value; }
54
else
if
(value ==
kL1AfterPrescale
) {
m_encoded
|= value; }
55
}
56
57
//--------------------------------------------------------------------------------------
58
uint16_t
TrigMonL1Item::getCtpId
()
const
59
{
60
//
61
// Mask decision bits and return ctp id
62
//
63
return
m_encoded
&
L1Bits::maskCtpId
;
64
}
65
66
//--------------------------------------------------------------------------------------
67
bool
TrigMonL1Item::isPassed
(
Decision
value)
const
68
{
69
//
70
// Check trigger decision value
71
//
72
if
(value ==
kPassed
)
return
isPassed
();
73
else
if
(value ==
kPrescaled
)
return
isPrescaled
();
74
75
return
m_encoded
& value;
76
}
77
78
//--------------------------------------------------------------------------------------
79
void
TrigMonL1Item::print
(std::ostream &os)
const
80
{
81
os <<
str
(*
this
) << std::endl;
82
}
83
84
//--------------------------------------------------------------------------------------
85
std::string
str
(
const
TrigMonL1Item
&o)
86
{
87
std::stringstream s;
88
s <<
"TrigMonL1Item: ctp id="
<< o.
getCtpId
()
89
<<
" passed="
<< o.
isPassed
(
TrigMonL1Item::kPassed
);
90
91
return
s.str();
92
}
errorcheck.h
Helpers for checking error return status codes and reporting errors.
REPORT_MESSAGE_WITH_CONTEXT
#define REPORT_MESSAGE_WITH_CONTEXT(LVL, CONTEXT_NAME)
Report a message, with an explicitly specified context name.
Definition
Control/AthenaKernel/AthenaKernel/errorcheck.h:345
TrigMonL1Item.h
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::isPassed
bool isPassed() const
Definition
TrigMonL1Item.h:54
TrigMonL1Item::isPrescaled
bool isPrescaled() const
Definition
TrigMonL1Item.h:55
TrigMonL1Item::addDecision
void addDecision(Decision value)
Definition
TrigMonL1Item.cxx:46
TrigMonL1Item::isPassed
bool isPassed(Decision value) const
Definition
TrigMonL1Item.cxx:67
TrigMonL1Item::TrigMonL1Item
TrigMonL1Item()
Definition
TrigMonL1Item.cxx:18
TrigMonL1Item::m_encoded
uint16_t m_encoded
Definition
TrigMonL1Item.h:62
TrigMonL1Item::setCtpId
void setCtpId(unsigned int ctpid)
Definition
TrigMonL1Item.cxx:30
L1Bits
Definition
TrigMonL1Item.cxx:12
L1Bits::maskCtpId
const uint32_t maskCtpId
Definition
TrigMonL1Item.cxx:13
str
Definition
BTagTrackIpAccessor.cxx:11
Generated on
for ATLAS Offline Software by
1.17.0