5#ifndef TRIGANALYSISHELPERS_FEATUREREQUESTDESCRIPTOR_H
6#define TRIGANALYSISHELPERS_FEATUREREQUESTDESCRIPTOR_H
37 const std::string& containerSGKey =
"",
40 const int restrictToLegIndex = -1);
65 void print(MsgStream&
msg,
const MSG::Level level = MSG::INFO);
132 const std::string&
SGKey()
const;
147 const std::string&
linkName()
const;
int restrictRequestToLeg() const
const std::string & chainGroup() const
FeatureRequestDescriptor(const std::string &chainGroupName="", const unsigned int condition=TrigDefs::Physics, const std::string &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.
int m_featureCollectionMode
FeatureRequestDescriptor & setCondition(const unsigned int condition)
Set the Condition: TrigDefs::Physics - (default), only returns features from paths through the naviga...
void reset()
Reset the FeatureRequestDescriptor to its default configuration.
FeatureRequestDescriptor & setLinkName(const std::string &navElementLinkKey)
Set the Link Name Key.
FeatureRequestDescriptor & setFeatureCollectionMode(const unsigned int featureCollectionMode)
Set the Feature Collection Mode: TrigDefs::lastFeatureOfType - (default) stop exploring up each path ...
FeatureRequestDescriptor & setChainGroup(const std::string &chainGroupName)
Set the desired Chain or Chain Group.
std::string m_chainGroupName
std::regex m_containerSGKeyExpression
const std::string & linkName() const
~FeatureRequestDescriptor()=default
Default destructor.
const std::regex & SGKeyExpression() const
const std::string & SGKey() const
FeatureRequestDescriptor(const FeatureRequestDescriptor &)=default
Default copy constructor.
std::string m_containerSGKey
FeatureRequestDescriptor & setRestrictRequestToLeg(const int restrictToLegIndex)
Set to -1 by default, indicating that all legs of multi-leg chains are searched.
FeatureRequestDescriptor(FeatureRequestDescriptor &&)=default
Default move constructor.
FeatureRequestDescriptor & setRequireSGKey(const std::string &containerSGKey)
Set the StoreGate key filter.
unsigned int condition() const
unsigned int featureCollectionMode() const
std::string m_navElementLinkKey
void print(MsgStream &msg, const MSG::Level level=MSG::INFO)
Print the configuration of the FeatureRequestDescriptor to the supplied message stream.
const std::string & featureString()
static const unsigned int lastFeatureOfType
Run 3 "enum". Only return the final feature along each route through the navigation.
static const unsigned int Physics
The common trigger namespace for trigger analysis tools.