ATLAS Offline Software
Loading...
Searching...
No Matches
Trig::TrigDecisionToolCore Class Reference

#include <TrigDecisionToolCore.h>

Inheritance diagram for Trig::TrigDecisionToolCore:
Collaboration diagram for Trig::TrigDecisionToolCore:

Public Member Functions

 TrigDecisionToolCore ()
virtual ~TrigDecisionToolCore ()
virtual StatusCode initialize ()
virtual StatusCode finalize ()
const Trig::ExpertMethodsExperimentalAndExpertMethods () const
const Trig::ChainGroupgetChainGroup (const std::vector< std::string > &patterns, TrigDefs::Group props=TrigDefs::Group::Default) const
 Create/get chain group (.
const Trig::ChainGroupgetChainGroup (const std::string &pattern, TrigDefs::Group props=TrigDefs::Group::Default) const
 Create/get chain group (.
std::vector< std::string > getListOfTriggers (const Trig::ChainGroup *chaingroup) const
std::vector< std::string > getListOfTriggers (const std::string &triggerNames=".*") const
std::vector< std::string > getListOfStreams (const Trig::ChainGroup *chaingroup) const
std::vector< std::string > getListOfStreams (const std::string &triggerNames=".*") const
std::vector< std::string > getListOfGroups (const Trig::ChainGroup *chaingroup) const
std::vector< std::string > getListOfGroups (const std::string &triggerNames=".*") const
std::vector< std::vector< std::string > > getListOfTriggerElements (const Trig::ChainGroup *chaingroup) const
std::vector< std::vector< std::string > > getListOfTriggerElements (const std::string &triggerNames=".*") const
float getPrescale (const Trig::ChainGroup *chaingroup, unsigned int condition=TrigDefs::Physics) const
float getPrescale (const std::string &triggerNames="EF._*", unsigned int condition=TrigDefs::Physics) const
bool isPassed (const Trig::ChainGroup *chaingroup, unsigned int condition=TrigDefs::Physics) const
 true if given group of chains passed
bool isPassed (const std::string &chain, unsigned int condition) const
 true if given chain passed
bool isPassed (const std::string &chain) const
unsigned int isPassedBits (const Trig::ChainGroup *chaingroup) const
 Return expert-level information about the various trigger flags as a bit mask.
unsigned int isPassedBits (const std::string &chain) const
FeatureContainer features (const Trig::ChainGroup *group, unsigned int condition=TrigDefs::Physics) const
 Runs 1, 2.
FeatureContainer features (const std::string &chainName="EF_.*", unsigned int condition=TrigDefs::Physics) const
 Runs 1, 2.
template<class CONTAINER>
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > features (const Trig::FeatureRequestDescriptor &featureRequest) const
 Runs 3+.
template<class CONTAINER>
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > features (const Trig::ChainGroup *group, 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) const
 Runs 3+.
template<class CONTAINER>
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > features (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) const
 Runs 3+.
template<class T>
Feature< T > ancestor (const HLT::TriggerElement *te, std::string label="") const
 gives back feature matching (by seeding relation)
std::vector< bool > isPassedForEach (const Trig::ChainGroup *chainGroup, unsigned int condition=TrigDefs::Physics) const
 return decision for each chain in group
std::vector< bool > isPassedForEach (const std::string &chain, unsigned int condition=TrigDefs::Physics) const
 return decision for each chain defined by given pattern
std::vector< unsigned int > isPassedBitsForEach (const Trig::ChainGroup *chaingroup) const
 Return the result of isPassedBits for each chain in the group.
std::vector< unsigned int > isPassedBitsForEach (const std::string &chain) const
char getBGCode () const
 get the bunch group code bit X=1: BG X fired (X=0..7) use: bool BGXfired = BGCode & (0x1<<X)
template<class T>
std::vector< Trig::Feature< T > > ancestors (const HLT::TriggerElement *te, std::string label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
 gives back features matching (by seeding relation) - will also flatten containers if necessary
MsgStream & msg () const
MsgStream & msg (const MSG::Level lvl) const
bool msgLvl (const MSG::Level lvl) const
Run 3 functions
template<class CONTAINER, class FEATURE_CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > associateToEventView (typename SG::ReadHandle< CONTAINER > &inViewContainer, const TrigCompositeUtils::LinkInfo< FEATURE_CONTAINER > linkInfo, const std::string &roiName=TrigCompositeUtils::roiString()) const
 Runs 3+.
template<class CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > associateToEventView (typename SG::ReadHandle< CONTAINER > &inViewContainer, const TrigCompositeUtils::Decision *decisionObject, const std::string &roiName=TrigCompositeUtils::roiString()) const
 Runs 3+.
template<class CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > associateToEventView (typename SG::ReadHandle< CONTAINER > &inViewContainer, const ElementLink< TrigRoiDescriptorCollection > &matchROI) const
 Runs 3+.
template<class CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > associateToEventView (typename SG::ReadHandle< CONTAINER > &inViewContainer, const uint32_t matchIndex, const uint32_t matchKey=0, const bool isFullscan=false) const
 Runs 3+.

Protected Member Functions

virtual Trig::CacheGlobalMemorycgm ()
virtual const Trig::CacheGlobalMemorycgm () const
void ChainGroupInitialize ()
void configurationUpdate (const TrigConf::HLTChainList *confChains, const TrigConf::CTPConfig *confItems)

Protected Attributes

HLT::TrigNavStructurem_navigation = nullptr

Private Member Functions

 TrigDecisionToolCore (const TrigDecisionToolCore &)
TrigDecisionToolCoreoperator= (const TrigDecisionToolCore &)

Private Attributes

SG::SlotSpecificObj< Trig::CacheGlobalMemorym_cacheGlobalMemory
Trig::ExpertMethods m_expertMethods

Detailed Description

Definition at line 34 of file TrigDecisionToolCore.h.

Constructor & Destructor Documentation

◆ TrigDecisionToolCore() [1/2]

Trig::TrigDecisionToolCore::TrigDecisionToolCore ( )

Definition at line 25 of file TrigDecisionToolCore.cxx.

25 :
27{
28}
Trig::ExpertMethods m_expertMethods
SG::SlotSpecificObj< Trig::CacheGlobalMemory > m_cacheGlobalMemory

◆ ~TrigDecisionToolCore()

Trig::TrigDecisionToolCore::~TrigDecisionToolCore ( )
virtual

Definition at line 46 of file TrigDecisionToolCore.cxx.

46 {
47}

◆ TrigDecisionToolCore() [2/2]

Trig::TrigDecisionToolCore::TrigDecisionToolCore ( const TrigDecisionToolCore & )
private

Member Function Documentation

◆ ancestor()

template<class T>
Feature< T > Trig::DecisionAccess::ancestor ( const HLT::TriggerElement * te,
std::string label = "" ) const

gives back feature matching (by seeding relation)

Parameters
te- is trigger element to start with, not that thanks to conversion operators Feature object can be given here as well

◆ ancestors()

template<class T>
std::vector< Trig::Feature< T > > Trig::DecisionAccess::ancestors ( const HLT::TriggerElement * te,
std::string label = "",
unsigned int condition = TrigDefs::Physics,
const std::string & teName = "" ) const
inherited

gives back features matching (by seeding relation) - will also flatten containers if necessary

Parameters
te- is trigger element to start with, not that thanks to conversion operators Feature object can be given here as well

◆ associateToEventView() [1/4]

template<class CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > Trig::DecisionAccess::associateToEventView ( typename SG::ReadHandle< CONTAINER > & inViewContainer,
const ElementLink< TrigRoiDescriptorCollection > & matchROI ) const
inherited

Runs 3+.

Returns a range over a container which are associated with a particular EventView instance from online. Instance mapping done via supplied ElementLink<TrigRoiDescriptorCollection>.

Parameters
[in]inViewContainerThe ReadHandle of the collection which was produced online inside an EventView.
[in]roiTrigRoiDescriptor used to seed the desired EventView.
Returns
Pair of iterators spanning a range of indices over the collection accessed through the ReadHandleKey

◆ associateToEventView() [2/4]

template<class CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > Trig::DecisionAccess::associateToEventView ( typename SG::ReadHandle< CONTAINER > & inViewContainer,
const TrigCompositeUtils::Decision * decisionObject,
const std::string & roiName = TrigCompositeUtils::roiString() ) const
inherited

Runs 3+.

Returns a range over a container which are associated with a particular EventView instance from online. Instance mapping done via an ElementLink<TrigRoiDescriptorCollection> obtained from the supplied Decision object pointer

Parameters
[in]inViewContainerThe ReadHandle of the collection which was produced online inside an EventView.
[in]decisionObjectDecision node from which a TrigRoiDescriptor can be located.
[in]roiNameName of the TrigRoiDescriptor inside the Navigation.
Returns
Pair of iterators spanning a range of indices over the collection accessed through the ReadHandleKey

◆ associateToEventView() [3/4]

template<class CONTAINER, class FEATURE_CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > Trig::DecisionAccess::associateToEventView ( typename SG::ReadHandle< CONTAINER > & inViewContainer,
const TrigCompositeUtils::LinkInfo< FEATURE_CONTAINER > linkInfo,
const std::string & roiName = TrigCompositeUtils::roiString() ) const
inherited

Runs 3+.

Returns a range over a container which are associated with a particular EventView instance from online. Instance mapping done via an ElementLink<TrigRoiDescriptorCollection> obtained from the supplied LinkInfo

Parameters
[in]inViewContainerThe ReadHandle of the collection which was produced online inside an EventView.
[in]linkInfoLinkInfo from which a TrigRoiDescriptor can be located.
[in]roiNameName of the TrigRoiDescriptor inside the Navigation.
Returns
Pair of iterators spanning a range of indices over the collection accessed through the ReadHandleKey

◆ associateToEventView() [4/4]

template<class CONTAINER>
std::pair< typename CONTAINER::const_iterator, typename CONTAINER::const_iterator > Trig::DecisionAccess::associateToEventView ( typename SG::ReadHandle< CONTAINER > & inViewContainer,
const uint32_t matchIndex,
const uint32_t matchKey = 0,
const bool isFullscan = false ) const
inherited

Runs 3+.

Returns a range over a container which are associated with a particular EventView instance from online. Instance mapping done via matchIndex and optional matchKey (leave matchKey = 0 to not cut on this).

Parameters
[in]inViewContainerThe ReadHandle of the collection which was produced online inside an EventView.
[in]matchIndexThe index of the desired EventView.
[in]matchKeyOptional. SGKey of the index of the desired EventView (collection hosting the ROI used to span the Event View)
[in]isFullscanOptional. If true, and inViewContainer has no viewIndex decorations, then return iterators over the full span of the inViewContainer instead of throwing an exception. This allows the associateToEventView interface to be used also for non-EventView containers, with the FS ROI used to indicate that the lack of decorations is expected rather than being indicative of a configuration problem.
Returns
Pair of iterators spanning a range of indices over the collection accessed through the ReadHandleKey

◆ cgm() [1/2]

Trig::CacheGlobalMemory * Trig::TrigDecisionToolCore::cgm ( )
protectedvirtual

Implements Trig::ChainGroupFunctions.

Definition at line 30 of file TrigDecisionToolCore.cxx.

30 {
31 Trig::CacheGlobalMemory* ptr = m_cacheGlobalMemory.get();
32 // A consequence of placing the cache in a slot-specific wrapper
33 ptr->navigation (m_navigation);
34 return ptr;
35}
HLT::TrigNavStructure * m_navigation
void * ptr(T *p)
Definition SGImplSvc.cxx:74

◆ cgm() [2/2]

const Trig::CacheGlobalMemory * Trig::TrigDecisionToolCore::cgm ( ) const
protectedvirtual

Implements Trig::ChainGroupFunctions.

Definition at line 37 of file TrigDecisionToolCore.cxx.

37 {
38 const Trig::CacheGlobalMemory* ptr = m_cacheGlobalMemory.get();
39 // A consequence of placing the cache in a slot-specific wrapper
40 Trig::CacheGlobalMemory* p ATLAS_THREAD_SAFE = const_cast<Trig::CacheGlobalMemory*>(ptr);
41 HLT::TrigNavStructure* navigation ATLAS_THREAD_SAFE = m_navigation;
42 p->navigation (navigation);
43 return ptr;
44}

◆ ChainGroupInitialize()

void Trig::ChainGroupFunctions::ChainGroupInitialize ( )
protectedinherited

Definition at line 25 of file ChainGroupFunctions.cxx.

25 {
26 // all triggers
27 getChainGroup(".*");
28 // all L1 triggers
29 getChainGroup("L1_.*");
30 // all L2 triggers
31 getChainGroup("L2_.*");
32 // all EF triggers
33 getChainGroup("EF_.*");
34 // all merged L2EF triggers
35 getChainGroup("HLT_.*");
36}
const Trig::ChainGroup * getChainGroup(const std::vector< std::string > &patterns, TrigDefs::Group props=TrigDefs::Group::Default) const
Create/get chain group (.

◆ configurationUpdate()

void Trig::ConfigurationAccess::configurationUpdate ( const TrigConf::HLTChainList * confChains,
const TrigConf::CTPConfig * confItems )
protectedinherited

Definition at line 26 of file ConfigurationAccess.cxx.

27 {
28 // this is the update method which is called whenever a lower level element has changed
29 // or needs to be changed
30 cgm()->update(confChains, ctp);
31}
void update(const TrigConf::HLTChainList *confChains, const TrigConf::CTPConfig *ctp)
Updates configuration of the chain groups (i.e.
virtual Trig::CacheGlobalMemory * cgm()=0

◆ ExperimentalAndExpertMethods()

const Trig::ExpertMethods & Trig::TrigDecisionToolCore::ExperimentalAndExpertMethods ( ) const
inline

Definition at line 59 of file TrigDecisionToolCore.h.

59{ return m_expertMethods; }

◆ features() [1/5]

template<class CONTAINER>
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > Trig::DecisionAccess::features ( 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 ) const

Runs 3+.

Returns features related to given chain

Parameters
[in]groupChain group to return features for.
[in]conditionCondition requirement. Only TrigDefs::Physics and TrigDefs::includeFailedDecisions are supported.
[in]containerSGKeyOptional requirement to return only features within the specified container name. Not checked if not specified.
[in]featureCollectionModeFor lastFeatureOfType, stop exploring each route through the navigation once one matching feature has been found.
[in]navElementLinkKeyOptional name of element link as saved online. The "feature" link is enforced, others may have been added.
[in]restrictToLegIndexOptional index of a leg for mult-leg chains. Features will only be returned on the specified leg. Default is all legs.
Returns
Vector of LinkInfo, where each entry wraps an ElementLink to the feature, and the Decision object it came from.

◆ features() [2/5]

Trig::FeatureContainer Trig::DecisionAccess::features ( const std::string & chainName = "EF_.*",
unsigned int condition = TrigDefs::Physics ) const

Runs 1, 2.

Returns features related to given chain

Definition at line 136 of file DecisionAccess.cxx.

97 {
98 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(chain));
99 return features(g,condition);
100}
const Trig::ChainGroup * createChainGroup(const std::vector< std::string > &patterns, const std::string &alias="", TrigDefs::Group props=TrigDefs::Group::Default) const
creates new chain group
virtual Trig::CacheGlobalMemory * cgm()
FeatureContainer features(const Trig::ChainGroup *group, unsigned int condition=TrigDefs::Physics) const
Runs 1, 2.
std::vector< std::string > convertStringToVector(const std::string &triggerNames)
makes a split of list of chains into the vector of chains

◆ features() [3/5]

template<class CONTAINER>
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > Trig::DecisionAccess::features ( const Trig::ChainGroup * group,
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 ) const

Runs 3+.

Returns all features related to given chain group

Parameters
[in]groupChain group to return features for.
[in]conditionCondition requirement. Only TrigDefs::Physics and TrigDefs::includeFailedDecisions are supported.
[in]containerSGKeyOptional requirement to return only features within the specified container name. Not checked if not specified.
[in]featureCollectionModeFor lastFeatureOfType, stop exploring each route through the navigation once one matching feature has been found.
[in]navElementLinkKeyOptional name of element link as saved online. The "feature" link is enforced, others may have been added.
[in]restrictToLegIndexOptional index of a leg for mult-leg chains. Features will only be returned on the specified leg. Default is all legs.
Returns
Vector of LinkInfo, where each entry wraps an ElementLink to the feature, and the Decision object it came from.

◆ features() [4/5]

Trig::FeatureContainer Trig::DecisionAccess::features ( const Trig::ChainGroup * group,
unsigned int condition = TrigDefs::Physics ) const

Runs 1, 2.

Returns all features related to given chain group

Definition at line 130 of file DecisionAccess.cxx.

92 {
93 return chain->features(condition);
94}

◆ features() [5/5]

template<class CONTAINER>
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > Trig::DecisionAccess::features ( const Trig::FeatureRequestDescriptor & featureRequest) const

Runs 3+.

Returns all features related to given chain group

Parameters
[in]featureRequestHelper object which encapsulates all configurable options of a request for features from the TDT
Returns
Vector of LinkInfo, where each entry wraps an ElementLink to the feature, and the Decision object it came from.

◆ finalize()

StatusCode Trig::TrigDecisionToolCore::finalize ( )
virtual

Reimplemented in Trig::TrigDecisionTool.

Definition at line 55 of file TrigDecisionToolCore.cxx.

55 {
56 return StatusCode::SUCCESS;
57}

◆ getBGCode()

char Trig::DecisionAccess::getBGCode ( ) const
inherited

get the bunch group code bit X=1: BG X fired (X=0..7) use: bool BGXfired = BGCode & (0x1<<X)

Definition at line 103 of file DecisionAccess.cxx.

103 {
104 if( ! cgm()->assert_decision() ) {
105 ATH_MSG_ERROR("Something went wrong in decoding the trigger decision");
106 return 0;
107 }
108 return cgm()->m_bgCode;
109}
#define ATH_MSG_ERROR(x)
char m_bgCode
the encoded bunchgroup information
virtual Trig::CacheGlobalMemory * cgm()=0

◆ getChainGroup() [1/2]

const Trig::ChainGroup * Trig::ChainGroupFunctions::getChainGroup ( const std::string & pattern,
TrigDefs::Group props = TrigDefs::Group::Default ) const

Create/get chain group (.

See also
CacheGlobalMemory)

Definition at line 41 of file ChainGroupFunctions.cxx.

44 {
45 return getChainGroup(Trig::convertStringToVector(triggerNames), props);
46}
const Trig::ChainGroup * getChainGroup(const std::vector< std::string > &patterns, TrigDefs::Group props=TrigDefs::Group::Default) const
Create/get chain group (.

◆ getChainGroup() [2/2]

const Trig::ChainGroup * Trig::ChainGroupFunctions::getChainGroup ( const std::vector< std::string > & patterns,
TrigDefs::Group props = TrigDefs::Group::Default ) const

Create/get chain group (.

See also
CacheGlobalMemory)

Definition at line 37 of file ChainGroupFunctions.cxx.

39 {
40 return cgm()->getChainGroup (triggerNames, props);
41}
const Trig::ChainGroup * getChainGroup(const std::vector< std::string > &triggerNames, TrigDefs::Group props) const

◆ getListOfGroups() [1/2]

std::vector< std::string > Trig::ConfigurationAccess::getListOfGroups ( const std::string & triggerNames = ".*") const

Definition at line 39 of file ConfigurationAccess.cxx.

67 {
68 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(triggerNames));
69 return getListOfGroups(g);
70}
std::vector< std::string > getListOfGroups(const Trig::ChainGroup *chaingroup) const

◆ getListOfGroups() [2/2]

std::vector< std::string > Trig::ConfigurationAccess::getListOfGroups ( const Trig::ChainGroup * chaingroup) const

Definition at line 38 of file ConfigurationAccess.cxx.

63 {
64 return chaingroup->getListOfGroups();
65}
std::vector< std::string > getListOfGroups() const

◆ getListOfStreams() [1/2]

std::vector< std::string > Trig::ConfigurationAccess::getListOfStreams ( const std::string & triggerNames = ".*") const

Definition at line 36 of file ConfigurationAccess.cxx.

54 {
55 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(triggerNames));
56 return getListOfStreams(g);
57}
std::vector< std::string > getListOfStreams(const Trig::ChainGroup *chaingroup) const

◆ getListOfStreams() [2/2]

std::vector< std::string > Trig::ConfigurationAccess::getListOfStreams ( const Trig::ChainGroup * chaingroup) const

Definition at line 35 of file ConfigurationAccess.cxx.

50 {
51 return chaingroup->getListOfStreams();
52}
std::vector< std::string > getListOfStreams() const

◆ getListOfTriggerElements() [1/2]

std::vector< std::vector< std::string > > Trig::ConfigurationAccess::getListOfTriggerElements ( const std::string & triggerNames = ".*") const

Definition at line 42 of file ConfigurationAccess.cxx.

80 {
81 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(triggerNames));
83}
std::vector< std::vector< std::string > > getListOfTriggerElements(const Trig::ChainGroup *chaingroup) const

◆ getListOfTriggerElements() [2/2]

std::vector< std::vector< std::string > > Trig::ConfigurationAccess::getListOfTriggerElements ( const Trig::ChainGroup * chaingroup) const

Definition at line 41 of file ConfigurationAccess.cxx.

76 {
77 return chaingroup->getListOfTriggerElements();
78}
std::vector< std::vector< std::string > > getListOfTriggerElements() const

◆ getListOfTriggers() [1/2]

std::vector< std::string > Trig::ConfigurationAccess::getListOfTriggers ( const std::string & triggerNames = ".*") const

Definition at line 33 of file ConfigurationAccess.cxx.

41 {
42 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(triggerNames));
43 return getListOfTriggers(g);
44}
std::vector< std::string > getListOfTriggers(const Trig::ChainGroup *chaingroup) const

◆ getListOfTriggers() [2/2]

std::vector< std::string > Trig::ConfigurationAccess::getListOfTriggers ( const Trig::ChainGroup * chaingroup) const

Definition at line 32 of file ConfigurationAccess.cxx.

37 {
38 return chaingroup->getListOfTriggers();
39}
std::vector< std::string > getListOfTriggers() const

◆ getPrescale() [1/2]

float Trig::ConfigurationAccess::getPrescale ( const std::string & triggerNames = "EF._*",
unsigned int condition = TrigDefs::Physics ) const

Definition at line 45 of file ConfigurationAccess.cxx.

97{
98 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(chain));
99 return getPrescale(g,condition);
100}
float getPrescale(const Trig::ChainGroup *chaingroup, unsigned int condition=TrigDefs::Physics) const

◆ getPrescale() [2/2]

float Trig::ConfigurationAccess::getPrescale ( const Trig::ChainGroup * chaingroup,
unsigned int condition = TrigDefs::Physics ) const

Definition at line 44 of file ConfigurationAccess.cxx.

90{
91 return chainGroup->getPrescale(condition);
92}

◆ initialize()

StatusCode Trig::TrigDecisionToolCore::initialize ( void )
virtual

Reimplemented in Trig::TrigDecisionTool.

Definition at line 50 of file TrigDecisionToolCore.cxx.

50 {
52 return StatusCode::SUCCESS;
53}

◆ isPassed() [1/3]

bool Trig::DecisionAccess::isPassed ( const std::string & chain) const

Definition at line 75 of file DecisionAccess.cxx.

48 {
49 return isPassed(chain, TrigDefs::Physics);
50}
bool isPassed(const Trig::ChainGroup *chaingroup, unsigned int condition=TrigDefs::Physics) const
true if given group of chains passed

◆ isPassed() [2/3]

bool Trig::DecisionAccess::isPassed ( const std::string & chain,
unsigned int condition ) const

true if given chain passed

See also
Trig::ChainGroup
TrigDefs::Conditions

Definition at line 72 of file DecisionAccess.cxx.

43{
44 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(chain));
45 return isPassed(g,condition);
46}

◆ isPassed() [3/3]

bool Trig::DecisionAccess::isPassed ( const Trig::ChainGroup * chaingroup,
unsigned int condition = TrigDefs::Physics ) const

true if given group of chains passed

See also
Trig::ChainGroup
TrigDefs::Conditions

Definition at line 65 of file DecisionAccess.cxx.

36{
37 return chainGroup->isPassed(condition);
38}

◆ isPassedBits() [1/2]

unsigned int Trig::DecisionAccess::isPassedBits ( const std::string & chain) const

Definition at line 111 of file DecisionAccess.cxx.

73{
74 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(chain));
75 return isPassedBits(g);
76}
unsigned int isPassedBits(const Trig::ChainGroup *chaingroup) const
Return expert-level information about the various trigger flags as a bit mask.

◆ isPassedBits() [2/2]

unsigned int Trig::DecisionAccess::isPassedBits ( const Trig::ChainGroup * chaingroup) const

Return expert-level information about the various trigger flags as a bit mask.

Note: this does not accept a conditions flag – the prescription is always enforceLogicalFlow. The mask can be comprehended using the following constants from TrigDefs:: EF_passedRaw EF_passThrough EF_prescaled EF_resurrected L2_passedRaw L2_passThrough L2_prescaled L2_resurrected L1_isPassedAfterPrescale L1_isPassedBeforePrescale L1_isPassedAfterVeto

Definition at line 110 of file DecisionAccess.cxx.

68{
69 return chainGroup->isPassedBits();
70}

◆ isPassedBitsForEach() [1/2]

std::vector< unsigned int > Trig::DecisionAccess::isPassedBitsForEach ( const std::string & chain) const
inherited

Definition at line 85 of file DecisionAccess.cxx.

86{
87 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(chain));
88 return g->isPassedBitsForEach();
89}

◆ isPassedBitsForEach() [2/2]

std::vector< unsigned int > Trig::DecisionAccess::isPassedBitsForEach ( const Trig::ChainGroup * chaingroup) const
inherited

Return the result of isPassedBits for each chain in the group.

Definition at line 79 of file DecisionAccess.cxx.

80{
81 return chainGroup->isPassedBitsForEach();
82}

◆ isPassedForEach() [1/2]

std::vector< bool > Trig::DecisionAccess::isPassedForEach ( const std::string & chain,
unsigned int condition = TrigDefs::Physics ) const
inherited

return decision for each chain defined by given pattern

See also
Trig::ChainGroup
TrigDefs::Conditions

Definition at line 60 of file DecisionAccess.cxx.

62{
63 const Trig::ChainGroup *g = cgm()->createChainGroup(Trig::convertStringToVector(chain));
64 return g->isPassedForEach(condition);
65}

◆ isPassedForEach() [2/2]

std::vector< bool > Trig::DecisionAccess::isPassedForEach ( const Trig::ChainGroup * chainGroup,
unsigned int condition = TrigDefs::Physics ) const
inherited

return decision for each chain in group

See also
Trig::ChainGroup
TrigDefs::Conditions

Definition at line 53 of file DecisionAccess.cxx.

55{
56 return chainGroup->isPassedForEach(condition);
57}
std::vector< bool > isPassedForEach(unsigned int condition=TrigDefs::Physics) const
return vector with isPassed decision for each chain

◆ msg() [1/2]

MsgStream & Trig::Logger::msg ( ) const
inlineinherited

Definition at line 29 of file Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/Logger.h.

29 {
30 if (s_logger) return s_logger->msg();
31 else throw std::runtime_error("TrigDecisionTool Logger not initialized.");
32 }

◆ msg() [2/2]

MsgStream & Trig::Logger::msg ( const MSG::Level lvl) const
inlineinherited

◆ msgLvl()

bool Trig::Logger::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 34 of file Trigger/TrigAnalysis/TrigDecisionTool/TrigDecisionTool/Logger.h.

34{ return s_logger && s_logger->msgLvl(lvl); }

◆ operator=()

TrigDecisionToolCore & Trig::TrigDecisionToolCore::operator= ( const TrigDecisionToolCore & )
private

Member Data Documentation

◆ m_cacheGlobalMemory

SG::SlotSpecificObj<Trig::CacheGlobalMemory> Trig::TrigDecisionToolCore::m_cacheGlobalMemory
private

Definition at line 68 of file TrigDecisionToolCore.h.

◆ m_expertMethods

Trig::ExpertMethods Trig::TrigDecisionToolCore::m_expertMethods
private

Definition at line 70 of file TrigDecisionToolCore.h.

◆ m_navigation

HLT::TrigNavStructure* Trig::TrigDecisionToolCore::m_navigation = nullptr
protected

Definition at line 76 of file TrigDecisionToolCore.h.


The documentation for this class was generated from the following files: