ATLAS Offline Software
Loading...
Searching...
No Matches
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 PFALGORITHM_H
5#define PFALGORITHM_H
6
8#include "GaudiKernel/ToolHandle.h"
10
11#include "eflowCaloObject.h"
12#include "eflowRecTrack.h"
13
16#include "IPFBaseTool.h"
17#include "IPFSubtractionTool.h"
18
20
22
23public:
24 PFAlgorithm(const std::string& name, ISvcLocator* pSvcLocator);
26
27 StatusCode initialize() override ;
28 StatusCode execute(const EventContext& ctx) const override;
29 StatusCode finalize() override;
30
31private:
34 ToolHandle<IPFClusterSelectorTool> m_IPFClusterSelectorTool{
35 this,
36 "PFClusterSelectorTool",
37 "PFClusterSelectorTool",
38 "ToolHandle for the PFClusterSelectorTool which creates the set of "
39 "eflowRecCluster to be used"
40 };
41
43 ToolHandleArray<IPFSubtractionTool> m_IPFSubtractionTools;
44
46 ToolHandleArray<IPFBaseTool> m_IPFBaseTools;
47
50 this,
51 "eflowRecTracksInputName",
52 "eflowRecTracks",
53 "ReadHandleKey for the eflowRecTrackContainer to be read in"
54 };
55
58 this,
59 "eflowRecClustersOutputName",
60 "eflowRecClusters",
61 "WriteHandleKey for the eflowRecClusterContainer to write out"
62 };
63
66 this,
67 "PFCaloClustersOutputName",
68 "PFCaloCluster",
69 "WriteHandleKey for CaloClusterContainer to be written out"
70 };
71
74 this,
75 "eflowCaloObjectsOutputName",
76 "eflowCaloObjects",
77 "WriteHandleKey for eflowCaloObjectContainer to be written out"
78 };
79
81 ToolHandle<GenericMonitoringTool> m_monTool{ this,
82 "MonTool",
83 "",
84 "Monitoring tool" };
85
87 void printTools();
88
89};
90#endif
Header file to be included by clients of the Monitored infrastructure.
An algorithm that can be simultaneously executed in multiple threads.
ToolHandle< IPFClusterSelectorTool > m_IPFClusterSelectorTool
ToolHandle for the PFClusterSelectorTool which creates the set of eflowRecCluster to be used.
Definition PFAlgorithm.h:34
PFAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
StatusCode execute(const EventContext &ctx) const override
SG::WriteHandleKey< eflowCaloObjectContainer > m_eflowCaloObjectsWriteHandleKey
WriteHandleKey for eflowCaloObjectContainer to be written out.
Definition PFAlgorithm.h:73
SG::WriteHandleKey< eflowRecClusterContainer > m_eflowRecClustersWriteHandleKey
WriteHandleKey for the eflowRecClusterContainer to write out.
Definition PFAlgorithm.h:57
StatusCode finalize() override
ToolHandleArray< IPFSubtractionTool > m_IPFSubtractionTools
List of IPFSubtractionTool, which will be executed by this algorithm.
Definition PFAlgorithm.h:43
SG::ReadHandleKey< eflowRecTrackContainer > m_eflowRecTracksReadHandleKey
ReadHandleKey for the eflowRecTrackContainer to be read in.
Definition PFAlgorithm.h:49
ToolHandleArray< IPFBaseTool > m_IPFBaseTools
List of PFBaseAlgTool, which will be executed by this algorithm.
Definition PFAlgorithm.h:46
ToolHandle< GenericMonitoringTool > m_monTool
Online monitoring tool for recording histograms of the alg in action.
Definition PFAlgorithm.h:81
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_caloClustersWriteHandleKey
WriteHandleKey for CaloClusterContainer to be written out.
Definition PFAlgorithm.h:65
void printTools()
Funciton to print out list of tools if in VERBOSE mode.
StatusCode initialize() override
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.