ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
eflowRec
src
PFAlgorithm.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef EFLOWREC_PFALGORITHM_H
5
#define EFLOWREC_PFALGORITHM_H
6
7
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
8
#include "GaudiKernel/ToolHandle.h"
9
#include "
AthenaMonitoringKernel/Monitored.h
"
10
11
#include "
eflowCaloObject.h
"
12
#include "
eflowRecTrack.h
"
13
14
#include "
xAODCaloEvent/CaloClusterContainer.h
"
15
#include "
IPFClusterSelectorTool.h
"
16
#include "
IPFBaseTool.h
"
17
#include "
IPFSubtractionTool.h
"
18
#include "
IPFUnifiedBaseTool.h
"
19
20
#include "
PFData.h
"
21
22
23
class
eflowRecClusterContainer
;
24
25
class
PFAlgorithm
:
public
AthReentrantAlgorithm
{
26
27
public
:
28
PFAlgorithm
(
const
std::string& name, ISvcLocator* pSvcLocator);
29
~PFAlgorithm
() {};
30
31
StatusCode
initialize
()
override
;
32
StatusCode
execute
(
const
EventContext& ctx)
const override
;
33
StatusCode
finalize
()
override
;
34
35
private
:
38
ToolHandle<IPFClusterSelectorTool>
m_IPFClusterSelectorTool
{
39
this
,
40
"PFClusterSelectorTool"
,
41
"PFClusterSelectorTool"
,
42
"ToolHandle for the PFClusterSelectorTool which creates the set of "
43
"eflowRecCluster to be used"
44
};
45
47
ToolHandleArray<IPFSubtractionTool>
m_IPFSubtractionTools
{
this
,
"SubtractionToolList"
, {},
"List of Private Subtraction IPFSubtractionTools"
};
48
50
ToolHandleArray<IPFBaseTool>
m_IPFBaseTools
{
this
,
"BaseToolList"
, {},
"List of Private IPFBaseTools"
};
51
53
ToolHandleArray<IPFUnifiedBaseTool>
m_IPFUnifiedBaseTools
{
this
,
"UnifiedBaseTools"
, {},
"List of Private IPFUnifiedBaseTools"
};
54
56
SG::ReadHandleKey<eflowRecTrackContainer>
m_eflowRecTracksReadHandleKey
{
57
this
,
58
"eflowRecTracksInputName"
,
59
"eflowRecTracks"
,
60
"ReadHandleKey for the eflowRecTrackContainer to be read in"
61
};
62
64
SG::WriteHandleKey<eflowRecClusterContainer>
m_eflowRecClustersWriteHandleKey
{
65
this
,
66
"eflowRecClustersOutputName"
,
67
"eflowRecClusters"
,
68
"WriteHandleKey for the eflowRecClusterContainer to write out"
69
};
70
72
SG::WriteHandleKey<xAOD::CaloClusterContainer>
m_caloClustersWriteHandleKey
{
73
this
,
74
"PFCaloClustersOutputName"
,
75
"PFCaloCluster"
,
76
"WriteHandleKey for CaloClusterContainer to be written out"
77
};
78
80
SG::WriteHandleKey<eflowCaloObjectContainer>
m_eflowCaloObjectsWriteHandleKey
{
81
this
,
82
"eflowCaloObjectsOutputName"
,
83
"eflowCaloObjects"
,
84
"WriteHandleKey for eflowCaloObjectContainer to be written out"
85
};
86
88
ToolHandle<GenericMonitoringTool>
m_monTool
{
this
,
89
"MonTool"
,
90
""
,
91
"Monitoring tool"
};
92
94
void
printTools
();
95
96
Gaudi::Property<bool>
m_useUnified
{
this
,
"useUnified"
,
false
,
"Toggle to use standard PFA or unified PFA setup"
};
97
98
};
99
#endif
AthReentrantAlgorithm.h
CaloClusterContainer.h
IPFBaseTool.h
IPFClusterSelectorTool.h
IPFSubtractionTool.h
IPFUnifiedBaseTool.h
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
PFData.h
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
PFAlgorithm::m_IPFClusterSelectorTool
ToolHandle< IPFClusterSelectorTool > m_IPFClusterSelectorTool
ToolHandle for the PFClusterSelectorTool which creates the set of eflowRecCluster to be used.
Definition
PFAlgorithm.h:38
PFAlgorithm::PFAlgorithm
PFAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Definition
PFAlgorithm.cxx:9
PFAlgorithm::~PFAlgorithm
~PFAlgorithm()
Definition
PFAlgorithm.h:29
PFAlgorithm::execute
StatusCode execute(const EventContext &ctx) const override
Definition
PFAlgorithm.cxx:33
PFAlgorithm::m_eflowCaloObjectsWriteHandleKey
SG::WriteHandleKey< eflowCaloObjectContainer > m_eflowCaloObjectsWriteHandleKey
WriteHandleKey for eflowCaloObjectContainer to be written out.
Definition
PFAlgorithm.h:80
PFAlgorithm::m_IPFUnifiedBaseTools
ToolHandleArray< IPFUnifiedBaseTool > m_IPFUnifiedBaseTools
List of IPFUnifiedBaseTool, which will be executed by this algorithm.
Definition
PFAlgorithm.h:53
PFAlgorithm::m_eflowRecClustersWriteHandleKey
SG::WriteHandleKey< eflowRecClusterContainer > m_eflowRecClustersWriteHandleKey
WriteHandleKey for the eflowRecClusterContainer to write out.
Definition
PFAlgorithm.h:64
PFAlgorithm::finalize
StatusCode finalize() override
Definition
PFAlgorithm.cxx:115
PFAlgorithm::m_IPFSubtractionTools
ToolHandleArray< IPFSubtractionTool > m_IPFSubtractionTools
List of IPFSubtractionTool, which will be executed by this algorithm.
Definition
PFAlgorithm.h:47
PFAlgorithm::m_eflowRecTracksReadHandleKey
SG::ReadHandleKey< eflowRecTrackContainer > m_eflowRecTracksReadHandleKey
ReadHandleKey for the eflowRecTrackContainer to be read in.
Definition
PFAlgorithm.h:56
PFAlgorithm::m_IPFBaseTools
ToolHandleArray< IPFBaseTool > m_IPFBaseTools
List of PFBaseAlgTool, which will be executed by this algorithm.
Definition
PFAlgorithm.h:50
PFAlgorithm::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Online monitoring tool for recording histograms of the alg in action.
Definition
PFAlgorithm.h:88
PFAlgorithm::m_useUnified
Gaudi::Property< bool > m_useUnified
Definition
PFAlgorithm.h:96
PFAlgorithm::m_caloClustersWriteHandleKey
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_caloClustersWriteHandleKey
WriteHandleKey for CaloClusterContainer to be written out.
Definition
PFAlgorithm.h:72
PFAlgorithm::printTools
void printTools()
Funciton to print out list of tools if in VERBOSE mode.
Definition
PFAlgorithm.cxx:117
PFAlgorithm::initialize
StatusCode initialize() override
Definition
PFAlgorithm.cxx:13
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
eflowRecClusterContainer
Definition
eflowRecCluster.h:275
eflowCaloObject.h
eflowRecTrack.h
Generated on
for ATLAS Offline Software by
1.17.0