ATLAS Offline Software
TrigEventSelectionAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 #ifndef TRIGGER_ANALYSIS_ALGORITHMS__TRIG_EVENT_SELECTION_ALG_H
8 #define TRIGGER_ANALYSIS_ALGORITHMS__TRIG_EVENT_SELECTION_ALG_H
9 
12 #include <AsgTools/ToolHandle.h>
18 
19 namespace CP
20 {
22  {
23  public:
24  TrigEventSelectionAlg(const std::string &name,
25  ISvcLocator *svcLoc = nullptr);
26 
27  virtual StatusCode initialize() final;
28  virtual StatusCode execute() final;
29  virtual StatusCode finalize() final;
30 
31  private:
33  ToolHandle<Trig::ITrigDecisionTool> m_trigDecisionTool;
34 
36  Gaudi::Property<std::vector<std::string>> m_trigList {this, "triggers", {}, "trigger selection list"};
37 
39  Gaudi::Property<std::string> m_selectionDecoration {this, "selectionDecoration", "", "the decoration the trigger pass status"};
40 
42  Gaudi::Property<bool> m_noFilter {this, "noFilter", false, "whether to not apply an event filter"};
43 
45  Gaudi::Property<bool> m_noL1 {this, "noL1", false, "whether to not require L1 decision"};
46 
48  std::vector<SG::AuxElement::Decorator<bool>> m_selectionAccessors;
49 
51  FilterReporterParams m_filterParams {this, "TriggerEventSelection", "trigger event selection"};
52  };
53 }
54 
55 #endif
CP::TrigEventSelectionAlg::m_noFilter
Gaudi::Property< bool > m_noFilter
whether to not apply an event filter
Definition: TrigEventSelectionAlg.h:42
CP::TrigEventSelectionAlg::m_trigDecisionTool
ToolHandle< Trig::ITrigDecisionTool > m_trigDecisionTool
trigger decision tool handle
Definition: TrigEventSelectionAlg.h:33
CP::TrigEventSelectionAlg::m_noL1
Gaudi::Property< bool > m_noL1
whether to not require L1 decision
Definition: TrigEventSelectionAlg.h:45
PropertyWrapper.h
CP::TrigEventSelectionAlg
Definition: TrigEventSelectionAlg.h:22
CP::TrigEventSelectionAlg::m_trigList
Gaudi::Property< std::vector< std::string > > m_trigList
list of triggers or trigger chains
Definition: TrigEventSelectionAlg.h:36
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
Conditions.h
FilterReporterParams
a handle for applying algorithm filter decisions
Definition: FilterReporterParams.h:58
AnaAlgorithm.h
EL::AnaAlgorithm
the (new) base class for EventLoop algorithms
Definition: AnaAlgorithm.h:73
CP::TrigEventSelectionAlg::finalize
virtual StatusCode finalize() final
Definition: TrigEventSelectionAlg.cxx:66
CP::TrigEventSelectionAlg::initialize
virtual StatusCode initialize() final
Definition: TrigEventSelectionAlg.cxx:20
ITrigDecisionTool.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::TrigEventSelectionAlg::m_filterParams
FilterReporterParams m_filterParams
the filter reporter params
Definition: TrigEventSelectionAlg.h:51
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
CP::TrigEventSelectionAlg::m_selectionAccessors
std::vector< SG::AuxElement::Decorator< bool > > m_selectionAccessors
the accessors for m_selectionDecoration and m_trigList combination
Definition: TrigEventSelectionAlg.h:48
CP::TrigEventSelectionAlg::execute
virtual StatusCode execute() final
Definition: TrigEventSelectionAlg.cxx:40
CP::TrigEventSelectionAlg::m_selectionDecoration
Gaudi::Property< std::string > m_selectionDecoration
the decoration for trigger selection
Definition: TrigEventSelectionAlg.h:39
ToolHandle.h
AuxElement.h
Base class for elements of a container that can have aux data.
CP::TrigEventSelectionAlg::TrigEventSelectionAlg
TrigEventSelectionAlg(const std::string &name, ISvcLocator *svcLoc=nullptr)
Definition: TrigEventSelectionAlg.cxx:12
FilterReporterParams.h