ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigConfiguration
TrigConfL1Data
TrigConfL1Data
L1DataDef.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TrigConf_L1DataDef
6
#define TrigConf_L1DataDef
7
8
#include <string>
9
#include <map>
10
#include <vector>
11
12
#include "
CxxUtils/checker_macros.h
"
13
14
namespace
TrigConf
{
15
16
class
L1DataDef
{
17
public
:
18
19
enum
TriggerType
{
20
EM
=1,
TAU
,
MUON
,
// 1-3
21
JET
,
FJET
,
FJ
,
JE
,
JF
,
JB
,
// 4-9
22
XE
,
TE
,
XS
,
// 10 - 12
23
MBTS
,
MBTSSI
,
LUCID
,
TRT
,
BCM
,
ZDC
,
NIM
,
// 13 - 19
24
ZB
,
TH
,
M
,
BCMCMB
,
CALREQ
,
BPTX
,
// 20 - 25
25
TOPO
,
// 26
26
ALFA
,
// 27
27
BGRP
= 100,
RNDM
,
PCLK
,
// 100 - 102
28
UNDEF
= 199
// 199
29
};
30
31
struct
TriggerTypeConfig
{
32
TriggerTypeConfig
(
TriggerType
t=
UNDEF
,
const
std::string& n=
"UNDEF"
,
unsigned
int
m=0,
bool
i=
false
) :
33
type
(t),
name
(n),
max
(m),
internal
(i) {};
34
TriggerType
type
;
// the trigger type EM, BGRP, NIM
35
std::string
name
;
// the name "EM", "BGRP", "NIM"
36
unsigned
int
max
;
// the maximum number of thresholds
37
bool
internal
;
// true for internal triggers
38
};
39
40
typedef
TriggerTypeConfig
InternalTriggerType
;
41
42
typedef
std::map<TriggerType, TriggerTypeConfig>
TypeConfigMap_t
;
43
typedef
std::map<std::string, TriggerType>
STypeTypeMap_t
;
44
45
public
:
46
47
static
void
setMaxThresholdsFromL1Version
(
unsigned
int
l1version);
48
49
static
void
printMaxThresholds
();
50
51
static
TriggerType
stringAsType
(
const
std::string&
type
) {
return
g_sTypeType[
type
]; }
52
53
static
std::string&
typeAsString
(
TriggerType
tt) {
return
typeConfig
(tt).
name
; }
54
55
static
const
std::vector<TriggerType>&
types
() {
return
g_Types; }
56
57
static
const
TypeConfigMap_t
&
typeConfigs
() {
return
g_typeConfigs; }
58
static
TriggerTypeConfig&
typeConfig
(
TriggerType
tt);
59
60
static
bool
addConfig
(
TriggerType
tt,
const
std::string&
name
,
unsigned
int
max
,
bool
internal=
false
) {
61
g_typeConfigs.insert(TypeConfigMap_t::value_type(tt,
TriggerTypeConfig
(tt,
name
,
max
, internal)));
62
g_sTypeType.insert(STypeTypeMap_t::value_type(
name
,tt));
63
g_Types.push_back(tt);
64
return
true
;
65
}
66
67
static
void
setOldJEP3Cabling
();
68
static
void
setNewJEP3Cabling
();
69
70
private
:
71
// thread-safe because set once during initialize
72
inline
static
TypeConfigMap_t
g_typeConfigs
ATLAS_THREAD_SAFE
;
// maps TriggerType (e.g. L1DataDef::EM) to the TriggerTypeConfig object
73
inline
static
STypeTypeMap_t
g_sTypeType
ATLAS_THREAD_SAFE
;
// maps string to TriggerType (e.g. "EM" -> L1DataDef::EM)
74
inline
static
std::vector<TriggerType> g_Types
ATLAS_THREAD_SAFE
;
75
inline
static
unsigned
int
g_l1Version
ATLAS_THREAD_SAFE
{0};
76
77
};
78
79
}
80
81
#endif
max
#define max(a, b)
Definition
cfImp.cxx:41
checker_macros.h
Define macros for attributes used to control the static checker.
TrigConf::L1DataDef
Definition
L1DataDef.h:16
TrigConf::L1DataDef::stringAsType
static TriggerType stringAsType(const std::string &type)
Definition
L1DataDef.h:51
TrigConf::L1DataDef::TriggerType
TriggerType
Definition
L1DataDef.h:19
TrigConf::L1DataDef::TOPO
@ TOPO
Definition
L1DataDef.h:25
TrigConf::L1DataDef::FJET
@ FJET
Definition
L1DataDef.h:21
TrigConf::L1DataDef::MBTSSI
@ MBTSSI
Definition
L1DataDef.h:23
TrigConf::L1DataDef::ALFA
@ ALFA
Definition
L1DataDef.h:26
TrigConf::L1DataDef::BCM
@ BCM
Definition
L1DataDef.h:23
TrigConf::L1DataDef::JE
@ JE
Definition
L1DataDef.h:21
TrigConf::L1DataDef::JB
@ JB
Definition
L1DataDef.h:21
TrigConf::L1DataDef::MUON
@ MUON
Definition
L1DataDef.h:20
TrigConf::L1DataDef::NIM
@ NIM
Definition
L1DataDef.h:23
TrigConf::L1DataDef::JET
@ JET
Definition
L1DataDef.h:21
TrigConf::L1DataDef::XS
@ XS
Definition
L1DataDef.h:22
TrigConf::L1DataDef::TE
@ TE
Definition
L1DataDef.h:22
TrigConf::L1DataDef::JF
@ JF
Definition
L1DataDef.h:21
TrigConf::L1DataDef::LUCID
@ LUCID
Definition
L1DataDef.h:23
TrigConf::L1DataDef::FJ
@ FJ
Definition
L1DataDef.h:21
TrigConf::L1DataDef::UNDEF
@ UNDEF
Definition
L1DataDef.h:28
TrigConf::L1DataDef::ZB
@ ZB
Definition
L1DataDef.h:24
TrigConf::L1DataDef::BPTX
@ BPTX
Definition
L1DataDef.h:24
TrigConf::L1DataDef::BCMCMB
@ BCMCMB
Definition
L1DataDef.h:24
TrigConf::L1DataDef::MBTS
@ MBTS
Definition
L1DataDef.h:23
TrigConf::L1DataDef::TAU
@ TAU
Definition
L1DataDef.h:20
TrigConf::L1DataDef::EM
@ EM
Definition
L1DataDef.h:20
TrigConf::L1DataDef::CALREQ
@ CALREQ
Definition
L1DataDef.h:24
TrigConf::L1DataDef::M
@ M
Definition
L1DataDef.h:24
TrigConf::L1DataDef::TH
@ TH
Definition
L1DataDef.h:24
TrigConf::L1DataDef::XE
@ XE
Definition
L1DataDef.h:22
TrigConf::L1DataDef::BGRP
@ BGRP
Definition
L1DataDef.h:27
TrigConf::L1DataDef::RNDM
@ RNDM
Definition
L1DataDef.h:27
TrigConf::L1DataDef::PCLK
@ PCLK
Definition
L1DataDef.h:27
TrigConf::L1DataDef::InternalTriggerType
TriggerTypeConfig InternalTriggerType
Definition
L1DataDef.h:40
TrigConf::L1DataDef::STypeTypeMap_t
std::map< std::string, TriggerType > STypeTypeMap_t
Definition
L1DataDef.h:43
TrigConf::L1DataDef::addConfig
static bool addConfig(TriggerType tt, const std::string &name, unsigned int max, bool internal=false)
Definition
L1DataDef.h:60
TrigConf::L1DataDef::setOldJEP3Cabling
static void setOldJEP3Cabling()
Definition
L1DataDef.cxx:152
TrigConf::L1DataDef::typeConfigs
static const TypeConfigMap_t & typeConfigs()
Definition
L1DataDef.h:57
TrigConf::L1DataDef::printMaxThresholds
static void printMaxThresholds()
Definition
L1DataDef.cxx:57
TrigConf::L1DataDef::typeConfig
static TriggerTypeConfig & typeConfig(TriggerType tt)
Definition
L1DataDef.cxx:140
TrigConf::L1DataDef::TypeConfigMap_t
std::map< TriggerType, TriggerTypeConfig > TypeConfigMap_t
Definition
L1DataDef.h:42
TrigConf::L1DataDef::types
static const std::vector< TriggerType > & types()
Definition
L1DataDef.h:55
TrigConf::L1DataDef::ATLAS_THREAD_SAFE
static TypeConfigMap_t g_typeConfigs ATLAS_THREAD_SAFE
Definition
L1DataDef.h:72
TrigConf::L1DataDef::setNewJEP3Cabling
static void setNewJEP3Cabling()
Definition
L1DataDef.cxx:160
TrigConf::L1DataDef::typeAsString
static std::string & typeAsString(TriggerType tt)
Definition
L1DataDef.h:53
TrigConf::L1DataDef::setMaxThresholdsFromL1Version
static void setMaxThresholdsFromL1Version(unsigned int l1version)
Definition
L1DataDef.cxx:65
TRT
Definition
HitInfo.h:33
TrigConf
Forward iterator to traverse the main components of the trigger configuration.
Definition
Config.h:22
ZDC
Definition
LISAnalysisTool.cxx:19
type
L1DataDef::TriggerTypeConfig::TriggerTypeConfig
TriggerTypeConfig(TriggerType t=UNDEF, const std::string &n="UNDEF", unsigned int m=0, bool i=false)
Definition
L1DataDef.h:32
TrigConf::L1DataDef::TriggerTypeConfig
Definition
L1DataDef.h:31
TrigConf::L1DataDef::TriggerTypeConfig::max
unsigned int max
Definition
L1DataDef.h:36
TrigConf::L1DataDef::TriggerTypeConfig::TriggerTypeConfig
TriggerTypeConfig(TriggerType t=UNDEF, const std::string &n="UNDEF", unsigned int m=0, bool i=false)
Definition
L1DataDef.h:32
TrigConf::L1DataDef::TriggerTypeConfig::type
TriggerType type
Definition
L1DataDef.h:34
TrigConf::L1DataDef::TriggerTypeConfig::internal
bool internal
Definition
L1DataDef.h:37
TrigConf::L1DataDef::TriggerTypeConfig::name
std::string name
Definition
L1DataDef.h:35
TrigConf::name
Definition
HLTChainList.h:35
Generated on
for ATLAS Offline Software by
1.17.0