ATLAS Offline Software
Loading...
Searching...
No Matches
ITrigDecisionToolLite.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRIGDECISIONINTERFACE_ITRIGDECISIONTOOLLITE_H
6#define TRIGDECISIONINTERFACE_ITRIGDECISIONTOOLLITE_H
7
8// Framework include(s):
9#include "AsgTools/IAsgTool.h"
10
11#include <string>
12#include <vector>
13
14// Forward declarations
15namespace HLT {
16 class Identifier;
17}
18
19namespace TrigCompositeUtils {
20 struct TypelessLinkInfo;
21}
22
23namespace TrigCompositeUtils {
24 template<typename T>
25 struct LinkInfo;
26}
27
28namespace Trig {
30}
31
32class EventContext;
33
34namespace Trig {
35
42 class ITrigDecisionToolLite : virtual public asg::IAsgTool {
44
45 public:
47 virtual bool isPassed( const HLT::Identifier& chain, const EventContext& ctx ) const = 0;
48
50 virtual bool isPassed( const std::string& chain, const EventContext& ctx ) const = 0;
51
53 virtual bool isPassed( const std::vector<HLT::Identifier>& chains, const EventContext& ctx ) const = 0;
54
56 virtual bool isPassed( const std::vector<std::string>& chains, const EventContext& ctx ) const = 0;
57
59 template<class CONTAINER>
60 std::vector<TrigCompositeUtils::LinkInfo<CONTAINER>>
61 features( const Trig::FeatureRequestDescriptor& frd, const EventContext& ctx = Gaudi::Hive::currentContext() ) const;
62
64 template<class CONTAINER>
65 std::vector<TrigCompositeUtils::LinkInfo<CONTAINER>>
66 features( const std::string& chain, const EventContext& ctx = Gaudi::Hive::currentContext() ) const;
67
68 private:
70 virtual std::vector<TrigCompositeUtils::TypelessLinkInfo>
71 typelessFeatures( const Trig::FeatureRequestDescriptor& frd, const CLID clid, const EventContext& ctx) const = 0;
72
74 virtual const asg::EventStoreType* getEventStore() const = 0;
75
76 }; // class ITrigDecisionToolLite
77
78} // namespace Trig
79
81
82#endif // TRIGDECISIONINTERFACE_ITRIGDECISIONTOOLLITE_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
uint32_t CLID
The Class ID type.
isPassed and features interfaces for the TrigDecisionToolLite
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > features(const std::string &chain, const EventContext &ctx=Gaudi::Hive::currentContext()) const
Obtain features from the navigation for the supplied chain, using default values for all other featur...
virtual bool isPassed(const std::vector< HLT::Identifier > &chains, const EventContext &ctx) const =0
Get the physics decision for the OR of a number of HLT trigger chains, by identifier.
virtual std::vector< TrigCompositeUtils::TypelessLinkInfo > typelessFeatures(const Trig::FeatureRequestDescriptor &frd, const CLID clid, const EventContext &ctx) const =0
Internal type erased features call.
virtual bool isPassed(const HLT::Identifier &chain, const EventContext &ctx) const =0
Get the physics decision for a HLT trigger chain, by identifier.
virtual bool isPassed(const std::string &chain, const EventContext &ctx) const =0
Get the physics decision for a HLT trigger chain, by string.
virtual bool isPassed(const std::vector< std::string > &chains, const EventContext &ctx) const =0
Get the physics decision for the OR of a number of HLT trigger chains, by string.
std::vector< TrigCompositeUtils::LinkInfo< CONTAINER > > features(const Trig::FeatureRequestDescriptor &frd, const EventContext &ctx=Gaudi::Hive::currentContext()) const
Obtain features from the navigation, as specified in the supplied feature request descriptor.
virtual const asg::EventStoreType * getEventStore() const =0
Internal call to obtain event store pointer from concrete tool implementation. Note that evtStore() i...
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
The common trigger namespace for trigger analysis tools.
StoreGateSvc EventStoreType
the type returned by AsgTool::evtStore
Helper to keep a Decision object, ElementLink and ActiveState (with respect to some requested ChainGr...
Definition LinkInfo.h:22
Helper to keep a Decision object, ElementLink and ActiveState (with respect to some requested ChainGr...