ATLAS Offline Software
Loading...
Searching...
No Matches
ITauToolBase.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TAURECTOOLS_ITAUTOOLBASE_H
6#define TAURECTOOLS_ITAUTOOLBASE_H
7
8#include "AsgTools/IAsgTool.h"
9#include "xAODTau/TauJet.h"
15#include <boost/dynamic_bitset.hpp>
16
17#ifndef XAOD_ANALYSIS
19#endif
20
28
29class ITauToolBase : virtual public asg::IAsgTool
30{
31 public:
32
34
35 virtual ~ITauToolBase() {}
36
37 //-----------------------------------------------------------------
39 //-----------------------------------------------------------------
40 virtual StatusCode initialize() = 0;
41
42 //-----------------------------------------------------------------
44 //-----------------------------------------------------------------
45 virtual StatusCode eventInitialize() = 0;
46
47 //-----------------------------------------------------------------
49 //-----------------------------------------------------------------
50 virtual StatusCode executeTool(xAOD::TauJet& ,
51 const EventContext& ) const = 0;
52
53 virtual StatusCode executeTool(xAOD::TauJet& ,
54 const EventContext& ,
55 const xAOD::VertexContainer* ) const = 0;
56
57 virtual StatusCode executeTool(xAOD::TauJet& ,
58 const EventContext& ,
59 xAOD::VertexContainer& ) const = 0;
60
61 virtual StatusCode executeTool(xAOD::TauJet& ,
62 const EventContext& ,
63 xAOD::TauTrackContainer& ) const = 0;
64
65 virtual StatusCode executeTool(xAOD::TauJet& ,
66 const EventContext& ,
68 xAOD::PFOContainer& ) const = 0;
69
70 virtual StatusCode executeTool(xAOD::TauJet& ,
71 const EventContext& ,
74 const xAOD::CaloClusterContainer& ) const = 0;
75
76 virtual StatusCode executeTool(xAOD::TauJet& ,
77 const EventContext& ,
79 xAOD::PFOContainer& ) const = 0;
80
81 virtual StatusCode executeTool(xAOD::TauJet& ,
82 const EventContext& ,
83 xAOD::PFOContainer& ) const = 0;
84
85 virtual StatusCode executeTool(xAOD::TauJet& ,
86 const EventContext& ,
88 xAOD::PFOContainer& ) const = 0;
89
90#ifdef XAOD_ANALYSIS
91 // non-const version is needed in THOR
92 virtual StatusCode executeDev(xAOD::TauJet& ) = 0;
93#else
94 // CaloCellContainer not available in AnalysisBase
95 virtual StatusCode executeTool(xAOD::TauJet& ,
96 const EventContext& ,
98 boost::dynamic_bitset<>& ) const = 0;
99#endif
100
101 //-----------------------------------------------------------------
103 //-----------------------------------------------------------------
104 virtual StatusCode eventFinalize() = 0;
105
106 //-----------------------------------------------------------------
108 //-----------------------------------------------------------------
109 virtual StatusCode finalize() = 0;
110
111};
112
113#endif // TAURECTOOLS_ITAUTOOLBASE_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
CaloCellContainer that can accept const cell pointers.
CaloCellContainer that can accept const cell pointers.
The base class for all tau tools.
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::PFOContainer &, xAOD::PFOContainer &) const =0
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::PFOContainer &) const =0
virtual StatusCode eventInitialize()=0
Event initializer - called at the beginning of each event.
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &) const =0
Execute - called for each tau candidate.
virtual StatusCode initialize()=0
Tool initializer.
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, CaloConstCellContainer &, boost::dynamic_bitset<> &) const =0
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::TauTrackContainer &) const =0
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::VertexContainer &) const =0
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::ParticleContainer &, xAOD::PFOContainer &) const =0
virtual StatusCode eventFinalize()=0
Event finalizer - called at the end of each event.
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, const xAOD::VertexContainer *) const =0
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::CaloClusterContainer &, xAOD::PFOContainer &) const =0
virtual StatusCode executeTool(xAOD::TauJet &, const EventContext &, xAOD::PFOContainer &, xAOD::PFOContainer &, const xAOD::CaloClusterContainer &) const =0
virtual StatusCode finalize()=0
Finalizer.
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
PFOContainer_v1 PFOContainer
Definition of the current "pfo container version".
ParticleContainer_v1 ParticleContainer
Define the latest version of the particle class.
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
TauJet_v3 TauJet
Definition of the current "tau version".
Definition TauJet.h:17
TauTrackContainer_v1 TauTrackContainer
Definition of the current TauTrack container version.
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.