ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
L1Topo
L1TopoCoreSim
L1TopoCoreSim
GlobalOutput.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
6
#ifndef L1TopoCoreSim_GlobalOutput
7
#define L1TopoCoreSim_GlobalOutput
8
9
#include "
TrigConfBase/TrigConfMessaging.h
"
10
11
#include "
L1TopoCommon/StatusCode.h
"
12
#include "
L1TopoConfig/L1TopoConfigOutputList.h
"
13
14
#include "
TrigConfData/L1Connector.h
"
15
16
#include <iostream>
17
#include <vector>
18
#include <set>
19
#include <string>
20
#include <bitset>
21
#include <stdint.h>
22
23
namespace
TCS
{
24
class
GlobalOutput
;
25
}
26
27
28
namespace
TCS
{
29
30
std::ostream&
operator<<
(std::ostream&,
const
TCS::GlobalOutput &);
31
32
class
Decision
;
33
class
DecisionConnector
;
34
class
Count
;
35
class
CountingConnector
;
36
37
class
GlobalOutput
:
public
TrigConf::TrigConfMessaging
{
38
public
:
39
GlobalOutput
(
const
std::string & name =
"L1TopoGlobalOutput"
);
40
41
uint64_t
decision_field
(
const
std::string & l1connName)
const
;
42
43
uint32_t
decision_field
(
const
std::string& l1connName,
unsigned
int
clock)
const
;
44
45
bool
passed
(
const
std::string& connName,
unsigned
int
bit)
const
{
return
( ( (uint64_t)0x1 << bit) &
m_decision
.find(connName)->second) != 0; }
46
uint64_t
overflow_field
(
const
std::string& l1connName)
const
;
47
uint32_t
overflow_field
(
const
std::string& l1connName,
unsigned
int
clock)
const
;
48
bool
overflowed
(
const
std::string& l1connName,
unsigned
int
bit)
const
{
return
( ( (uint64_t)0x1 << bit) &
m_overflow
.find(l1connName)->second) != 0; }
49
50
uint64_t
ambiguity_field
(
const
std::string& l1connName)
const
;
51
uint32_t
ambiguity_field
(
const
std::string& l1connName,
unsigned
int
clock)
const
;
52
53
std::bitset<128>
count_field
(
const
std::string& l1connName)
const
;
54
55
const
Decision
&
decision
(
const
std::string & algName)
const
;
56
57
bool
isValid
()
const
{
return
m_valid
; }
58
59
void
setDecisionTriggerLines
(
const
std::vector<TrigConf::TriggerLine> & triggers);
60
61
void
setMultiplicityTriggerLines
(
const
std::vector<TrigConf::TriggerLine> & triggers);
62
63
StatusCode
collectOutput
(
const
std::set<DecisionConnector*> & outConn,
const
std::set<CountingConnector*> & countConn);
64
65
StatusCode
resetOutput
();
66
void
print
()
const
;
67
68
private
:
69
friend
std::ostream&
operator<<
(std::ostream&,
const
TCS::GlobalOutput
&);
70
71
// 64 bit decision bit field - map L1Connector name-decision field
72
std::map<std::string,uint64_t>
m_decision
;
73
// 64 bit overflow bit field - map L1Connector name-overflow field
74
std::map<std::string,uint64_t>
m_overflow
;
75
// 64 bit ambiguity bit field - map L1Connector name-ambiguity field
76
std::map<std::string,uint64_t>
m_ambiguity
;
77
78
// 128 bit multiplicity bit field - map L1Connector name-multiplicity field
79
std::map<std::string,std::bitset<128>>
m_count
;
80
// flags if the decision field is up to date
81
// set by @collectDecision(), unset by @reset()
82
bool
m_valid
{
false
};
83
84
// trigger lines
85
std::vector<TrigConf::TriggerLine>
m_triggersDec
;
86
std::vector<TrigConf::TriggerLine>
m_triggersCount
;
87
};
88
89
}
90
91
#endif
L1Connector.h
L1TopoConfigOutputList.h
TrigConfMessaging.h
Messaging base class for TrigConf code shared with Lvl1 ( AthMessaging).
StatusCode.h
TCS::Count
Definition
Count.h:20
TCS::CountingConnector
Definition
CountingConnector.h:26
TCS::DecisionConnector
Definition
DecisionConnector.h:23
TCS::Decision
Definition
Decision.h:19
TCS::GlobalOutput
Definition
GlobalOutput.h:37
TCS::GlobalOutput::resetOutput
StatusCode resetOutput()
Definition
GlobalOutput.cxx:194
TCS::GlobalOutput::m_overflow
std::map< std::string, uint64_t > m_overflow
Definition
GlobalOutput.h:74
TCS::GlobalOutput::isValid
bool isValid() const
Definition
GlobalOutput.h:57
TCS::GlobalOutput::decision
const Decision & decision(const std::string &algName) const
TCS::GlobalOutput::operator<<
friend std::ostream & operator<<(std::ostream &, const TCS::GlobalOutput &)
Definition
GlobalOutput.cxx:209
TCS::GlobalOutput::print
void print() const
Definition
GlobalOutput.cxx:249
TCS::GlobalOutput::m_valid
bool m_valid
Definition
GlobalOutput.h:82
TCS::GlobalOutput::overflowed
bool overflowed(const std::string &l1connName, unsigned int bit) const
Definition
GlobalOutput.h:48
TCS::GlobalOutput::m_count
std::map< std::string, std::bitset< 128 > > m_count
Definition
GlobalOutput.h:79
TCS::GlobalOutput::count_field
std::bitset< 128 > count_field(const std::string &l1connName) const
Definition
GlobalOutput.cxx:74
TCS::GlobalOutput::setMultiplicityTriggerLines
void setMultiplicityTriggerLines(const std::vector< TrigConf::TriggerLine > &triggers)
Definition
GlobalOutput.cxx:33
TCS::GlobalOutput::decision_field
uint64_t decision_field(const std::string &l1connName) const
Definition
GlobalOutput.cxx:47
TCS::GlobalOutput::ambiguity_field
uint64_t ambiguity_field(const std::string &l1connName) const
Definition
GlobalOutput.cxx:111
TCS::GlobalOutput::setDecisionTriggerLines
void setDecisionTriggerLines(const std::vector< TrigConf::TriggerLine > &triggers)
Definition
GlobalOutput.cxx:19
TCS::GlobalOutput::GlobalOutput
GlobalOutput(const std::string &name="L1TopoGlobalOutput")
Definition
GlobalOutput.cxx:137
TCS::GlobalOutput::collectOutput
StatusCode collectOutput(const std::set< DecisionConnector * > &outConn, const std::set< CountingConnector * > &countConn)
Definition
GlobalOutput.cxx:150
TCS::GlobalOutput::m_decision
std::map< std::string, uint64_t > m_decision
Definition
GlobalOutput.h:72
TCS::GlobalOutput::overflow_field
uint64_t overflow_field(const std::string &l1connName) const
Definition
GlobalOutput.cxx:84
TCS::GlobalOutput::m_ambiguity
std::map< std::string, uint64_t > m_ambiguity
Definition
GlobalOutput.h:76
TCS::GlobalOutput::m_triggersDec
std::vector< TrigConf::TriggerLine > m_triggersDec
Definition
GlobalOutput.h:85
TCS::GlobalOutput::m_triggersCount
std::vector< TrigConf::TriggerLine > m_triggersCount
Definition
GlobalOutput.h:86
TCS::GlobalOutput::passed
bool passed(const std::string &connName, unsigned int bit) const
Definition
GlobalOutput.h:45
TCS::StatusCode
Definition
Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/StatusCode.h:15
TrigConf::TrigConfMessaging
Class to provide easy access to TrigConf::MsgStream for TrigConf classes.
Definition
TrigConfMessaging.h:28
TCS
Definition
AnomalyDetectionBDT.h:18
TCS::operator<<
std::ostream & operator<<(std::ostream &os, const TCS::Bin &bin)
Definition
AnomalyDetectionBDT.cxx:50
Generated on
for ATLAS Offline Software by
1.17.0