ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigAnalysis
TrigAnalysisHelpers
TrigAnalysisHelpers
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGANALYSISHELPERS_FEATUREREQUESTDESCRIPTOR_H
6
#define TRIGANALYSISHELPERS_FEATUREREQUESTDESCRIPTOR_H
7
8
/**********************************************************************************
9
* @Package: TrigAnalysisHelpers
10
* @class : FeatureRequestDescriptor
11
*
12
* @brief Helper class to encapsulate all possible configuration options when making a
13
* request for trigger chain features using the TrigDecisionTool's run 3 interface.
14
*
15
***********************************************************************************/
16
17
18
#include "
AsgMessaging/MsgStream.h
"
19
#include "
TrigDecisionInterface/Conditions.h
"
20
#include "
TrigCompositeUtils/TrigCompositeUtils.h
"
21
#include <string>
22
#include <string_view>
23
#include <sstream>
24
#include <regex>
25
26
namespace
Trig
{
27
28
class
FeatureRequestDescriptor
{
29
30
public
:
31
37
FeatureRequestDescriptor
(std::string_view chainGroupName =
""
,
38
const
unsigned
int
condition
=
TrigDefs::Physics
,
39
std::string_view containerSGKey =
""
,
40
const
unsigned
int
featureCollectionMode
=
TrigDefs::lastFeatureOfType
,
41
const
std::string& navElementLinkKey =
TrigCompositeUtils::featureString
(),
42
const
int
restrictToLegIndex = -1);
43
47
~FeatureRequestDescriptor
() =
default
;
48
52
FeatureRequestDescriptor
(
FeatureRequestDescriptor
&&) =
default
;
53
57
FeatureRequestDescriptor
(
const
FeatureRequestDescriptor
&) =
default
;
58
62
void
reset
();
63
67
void
print
(MsgStream&
msg
,
const
MSG::Level level = MSG::INFO);
68
74
FeatureRequestDescriptor
&
setChainGroup
(std::string_view chainGroupName);
75
84
FeatureRequestDescriptor
&
setCondition
(
const
unsigned
int
condition
);
85
92
FeatureRequestDescriptor
&
setRequireSGKey
(std::string_view containerSGKey);
93
104
FeatureRequestDescriptor
&
setFeatureCollectionMode
(
const
unsigned
int
featureCollectionMode
);
105
112
FeatureRequestDescriptor
&
setLinkName
(
const
std::string& navElementLinkKey);
113
119
FeatureRequestDescriptor
&
setRestrictRequestToLeg
(
const
int
restrictToLegIndex);
120
124
const
std::string&
chainGroup
()
const
;
125
129
unsigned
int
condition
()
const
;
130
134
const
std::string&
SGKey
()
const
;
135
139
const
std::regex&
SGKeyExpression
()
const
;
140
144
unsigned
int
featureCollectionMode
()
const
;
145
149
const
std::string&
linkName
()
const
;
150
154
int
restrictRequestToLeg
()
const
;
155
156
private
:
157
158
std::string
m_chainGroupName
;
159
int
m_condition
;
160
std::string
m_containerSGKey
;
161
std::regex
m_containerSGKeyExpression
;
162
int
m_featureCollectionMode
;
163
std::string
m_navElementLinkKey
;
164
int
m_restrictToLegIndex
;
165
166
};
167
}
// End of namespace
168
169
#endif
// TRIGANALYSISHELPERS_FEATUREREQUESTDESCRIPTOR_H
MsgStream.h
TrigCompositeUtils.h
Conditions.h
Trig::FeatureRequestDescriptor::FeatureRequestDescriptor
FeatureRequestDescriptor(std::string_view chainGroupName="", const unsigned int condition=TrigDefs::Physics, std::string_view containerSGKey="", const unsigned int featureCollectionMode=TrigDefs::lastFeatureOfType, const std::string &navElementLinkKey=TrigCompositeUtils::featureString(), const int restrictToLegIndex=-1)
Default Constructor supplying all properties except for the chain group.
Definition
FeatureRequestDescriptor.cxx:10
Trig::FeatureRequestDescriptor::restrictRequestToLeg
int restrictRequestToLeg() const
Definition
FeatureRequestDescriptor.cxx:150
Trig::FeatureRequestDescriptor::chainGroup
const std::string & chainGroup() const
Definition
FeatureRequestDescriptor.cxx:117
Trig::FeatureRequestDescriptor::m_condition
int m_condition
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:159
Trig::FeatureRequestDescriptor::m_featureCollectionMode
int m_featureCollectionMode
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:162
Trig::FeatureRequestDescriptor::setCondition
FeatureRequestDescriptor & setCondition(const unsigned int condition)
Set the Condition: TrigDefs::Physics - (default), only returns features from paths through the naviga...
Definition
FeatureRequestDescriptor.cxx:80
Trig::FeatureRequestDescriptor::reset
void reset()
Reset the FeatureRequestDescriptor to its default configuration.
Definition
FeatureRequestDescriptor.cxx:24
Trig::FeatureRequestDescriptor::setLinkName
FeatureRequestDescriptor & setLinkName(const std::string &navElementLinkKey)
Set the Link Name Key.
Definition
FeatureRequestDescriptor.cxx:105
Trig::FeatureRequestDescriptor::setFeatureCollectionMode
FeatureRequestDescriptor & setFeatureCollectionMode(const unsigned int featureCollectionMode)
Set the Feature Collection Mode: TrigDefs::lastFeatureOfType - (default) stop exploring up each path ...
Definition
FeatureRequestDescriptor.cxx:96
Trig::FeatureRequestDescriptor::setRequireSGKey
FeatureRequestDescriptor & setRequireSGKey(std::string_view containerSGKey)
Set the StoreGate key filter.
Definition
FeatureRequestDescriptor.cxx:89
Trig::FeatureRequestDescriptor::m_chainGroupName
std::string m_chainGroupName
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:158
Trig::FeatureRequestDescriptor::m_containerSGKeyExpression
std::regex m_containerSGKeyExpression
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:161
Trig::FeatureRequestDescriptor::linkName
const std::string & linkName() const
Definition
FeatureRequestDescriptor.cxx:145
Trig::FeatureRequestDescriptor::~FeatureRequestDescriptor
~FeatureRequestDescriptor()=default
Default destructor.
Trig::FeatureRequestDescriptor::SGKeyExpression
const std::regex & SGKeyExpression() const
Definition
FeatureRequestDescriptor.cxx:135
Trig::FeatureRequestDescriptor::SGKey
const std::string & SGKey() const
Definition
FeatureRequestDescriptor.cxx:130
Trig::FeatureRequestDescriptor::FeatureRequestDescriptor
FeatureRequestDescriptor(const FeatureRequestDescriptor &)=default
Default copy constructor.
Trig::FeatureRequestDescriptor::setChainGroup
FeatureRequestDescriptor & setChainGroup(std::string_view chainGroupName)
Set the desired Chain or Chain Group.
Definition
FeatureRequestDescriptor.cxx:74
Trig::FeatureRequestDescriptor::m_containerSGKey
std::string m_containerSGKey
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:160
Trig::FeatureRequestDescriptor::setRestrictRequestToLeg
FeatureRequestDescriptor & setRestrictRequestToLeg(const int restrictToLegIndex)
Set to -1 by default, indicating that all legs of multi-leg chains are searched.
Definition
FeatureRequestDescriptor.cxx:111
Trig::FeatureRequestDescriptor::FeatureRequestDescriptor
FeatureRequestDescriptor(FeatureRequestDescriptor &&)=default
Default move constructor.
Trig::FeatureRequestDescriptor::condition
unsigned int condition() const
Definition
FeatureRequestDescriptor.cxx:125
Trig::FeatureRequestDescriptor::featureCollectionMode
unsigned int featureCollectionMode() const
Definition
FeatureRequestDescriptor.cxx:140
Trig::FeatureRequestDescriptor::m_navElementLinkKey
std::string m_navElementLinkKey
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:163
Trig::FeatureRequestDescriptor::m_restrictToLegIndex
int m_restrictToLegIndex
Definition
TrigAnalysisHelpers/TrigAnalysisHelpers/FeatureRequestDescriptor.h:164
Trig::FeatureRequestDescriptor::print
void print(MsgStream &msg, const MSG::Level level=MSG::INFO)
Print the configuration of the FeatureRequestDescriptor to the supplied message stream.
Definition
FeatureRequestDescriptor.cxx:35
TrigCompositeUtils::featureString
const std::string & featureString()
Definition
TrigCompositeUtils.h:426
TrigDefs::lastFeatureOfType
static const unsigned int lastFeatureOfType
Run 3 "enum". Only return the final feature along each route through the navigation.
Definition
TrigEvent/TrigDecisionInterface/TrigDecisionInterface/Conditions.h:68
TrigDefs::Physics
static const unsigned int Physics
Definition
TrigEvent/TrigDecisionInterface/TrigDecisionInterface/Conditions.h:43
Trig
The common trigger namespace for trigger analysis tools.
Definition
LArCellMonAlg.h:33
msg
MsgStream & msg
Definition
testRead.cxx:32
Generated on
for ATLAS Offline Software by
1.17.0