ATLAS Offline Software
ITrigTauPrecTrackHypoTool.h
Go to the documentation of this file.
1 // emacs: this is -*- c++ -*-
2 /*
3  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4 */
5 
6 #ifndef TrigTauHypo_ITrigTauPrecTrackHypoTool_H
7 #define TrigTauHypo_ITrigTauPrecTrackHypoTool_H
8 
9 #include "GaudiKernel/IAlgTool.h"
13 
14 
18 class ITrigTauPrecTrackHypoTool : virtual public ::IAlgTool
19 {
20 public:
22 
24 
25  struct ToolInfo {
27  const TrigCompositeUtils::Decision* previousDecision)
28  : decision(d),
29  roi(r),
32  TrigCompositeUtils::decisionIDs(previousDecision).end())
33  {}
34 
39  };
40 
41 
48  virtual StatusCode decide(std::vector<ToolInfo>& input) const = 0;
49 
54  virtual bool decide(const ToolInfo& i) const = 0;
55 };
56 
57 #endif
ITrigTauPrecTrackHypoTool::ToolInfo
Definition: ITrigTauPrecTrackHypoTool.h:25
ITrigTauPrecTrackHypoTool::ToolInfo::decision
TrigCompositeUtils::Decision * decision
Definition: ITrigTauPrecTrackHypoTool.h:35
beamspotman.r
def r
Definition: beamspotman.py:676
hist_file_dump.d
d
Definition: hist_file_dump.py:137
ITrigTauPrecTrackHypoTool::ToolInfo::previousDecisionIDs
const TrigCompositeUtils::DecisionIDContainer previousDecisionIDs
Definition: ITrigTauPrecTrackHypoTool.h:38
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
TrigRoiDescriptor
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
Definition: TrigRoiDescriptor.h:56
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
ITrigTauPrecTrackHypoTool::ToolInfo::roi
const TrigRoiDescriptor * roi
Definition: ITrigTauPrecTrackHypoTool.h:36
TrigCompositeUtils.h
lumiFormat.i
int i
Definition: lumiFormat.py:85
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ITrigTauPrecTrackHypoTool::ToolInfo::trackParticles
const xAOD::TrackParticleContainer * trackParticles
Definition: ITrigTauPrecTrackHypoTool.h:37
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
ITrigTauPrecTrackHypoTool::decide
virtual StatusCode decide(std::vector< ToolInfo > &input) const =0
decides upon all tracks Note it is for a reason a non-virtual method, it is an interface in gaudi sen...
xAOD::TrigComposite_v1
Class used to describe composite objects in the HLT.
Definition: TrigComposite_v1.h:52
ITrigTauPrecTrackHypoTool::DeclareInterfaceID
DeclareInterfaceID(ITrigTauPrecTrackHypoTool, 1, 0)
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
ITrigTauPrecTrackHypoTool
Base class for the TrigTauPrecTrackHypoTool.
Definition: ITrigTauPrecTrackHypoTool.h:19
ITrigTauPrecTrackHypoTool::decide
virtual bool decide(const ToolInfo &i) const =0
Makes a decision for a single object The decision needs to be returned.
TrigCompositeUtils::DecisionIDContainer
std::set< DecisionID > DecisionIDContainer
Definition: TrigComposite_v1.h:28
ITrigTauPrecTrackHypoTool::~ITrigTauPrecTrackHypoTool
virtual ~ITrigTauPrecTrackHypoTool()
Definition: ITrigTauPrecTrackHypoTool.h:23
TrigCompositeUtils::decisionIDs
void decisionIDs(const Decision *d, DecisionIDContainer &destination)
Extracts DecisionIDs stored in the Decision object.
Definition: TrigCompositeUtilsRoot.cxx:67
TrigCompositeUtils
Definition: Event/xAOD/xAODTrigger/xAODTrigger/TrigComposite.h:19
TrigRoiDescriptor.h
python.compressB64.c
def c
Definition: compressB64.py:93
ITrigTauPrecTrackHypoTool::ToolInfo::ToolInfo
ToolInfo(TrigCompositeUtils::Decision *d, const TrigRoiDescriptor *r, const xAOD::TrackParticleContainer *c, const TrigCompositeUtils::Decision *previousDecision)
Definition: ITrigTauPrecTrackHypoTool.h:26
TrackParticleContainer.h