ATLAS Offline Software
CaloClusterMaker.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //Dear emacs, this is -*-c++-*-
6 
7 #ifndef CALOREC_CALOCLUSTERMAKER_H
8 #define CALOREC_CALOCLUSTERMAKER_H
9 
29 #include "GaudiKernel/ToolHandle.h"
31 
33 class IChronoStatSvc;
34 
36 {
37 
38  public:
39 
40  CaloClusterMaker(const std::string& name, ISvcLocator* pSvcLocator);
41  virtual ~CaloClusterMaker() override;
42  virtual StatusCode initialize() override;
43  virtual StatusCode execute(const EventContext& ctx) const override;
44  virtual StatusCode finalize() override;
45 
46  const std::string& getOutputContainerName() const;
47 
48  private:
49 
55 
56 
60 
64 
70  //std::vector<std::string> m_clusterMakerNames;
71  ToolHandleArray<CaloClusterCollectionProcessor> m_clusterMakerTools;
72 
74  //std::vector<CaloClusterCollectionProcessor*> m_clusterMakerPointers;
75 
81  //std::vector<std::string> m_clusterCorrectionNames;
82  ToolHandleArray<CaloClusterCollectionProcessor> m_clusterCorrectionTools;
83 
84  //Handle to the ChronoStatSvc
86 
93 
96 
97 };
98 #endif // CALOREC_CALOCLUSTERMAKER_H
99 
100 
101 
CaloClusterMaker::m_saveSignalState
bool m_saveSignalState
controls saving the uncalibrated signal state just before the first CaloClusterCorrectionTool is invo...
Definition: CaloClusterMaker.h:92
CaloClusterMaker::m_chrono
ServiceHandle< IChronoStatSvc > m_chrono
Definition: CaloClusterMaker.h:85
CaloClusterMaker::m_clusterMakerTools
ToolHandleArray< CaloClusterCollectionProcessor > m_clusterMakerTools
a list of names for tools to make clusters
Definition: CaloClusterMaker.h:71
CaloClusterMaker::CaloClusterMaker
CaloClusterMaker(const std::string &name, ISvcLocator *pSvcLocator)
Definition: CaloClusterMaker.cxx:47
CaloClusterMaker::makeContainer
StatusCode makeContainer()
Method to create a CaloClusterContainer together with it's AuxStore and Link container.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
CaloClusterMaker::m_clusterCorrectionTools
ToolHandleArray< CaloClusterCollectionProcessor > m_clusterCorrectionTools
the actual list of tools corresponding to above names
Definition: CaloClusterMaker.h:82
CaloClusterMaker::~CaloClusterMaker
virtual ~CaloClusterMaker() override
SG::WriteHandleKey< xAOD::CaloClusterContainer >
CaloClusterMaker::initialize
virtual StatusCode initialize() override
Definition: CaloClusterMaker.cxx:90
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloClusterMaker::m_chronoTools
bool m_chronoTools
Use ChronotStatSvc to monitor each tool.
Definition: CaloClusterMaker.h:95
CaloClusterMaker::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: CaloClusterMaker.cxx:133
AthReentrantAlgorithm.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
CaloClusterMaker::m_clusterCellLinkOutput
SG::WriteHandleKey< CaloClusterCellLinkContainer > m_clusterCellLinkOutput
the name of the key in StoreGate for the output CaloClusterCellLinkContainer
Definition: CaloClusterMaker.h:63
CaloClusterCollectionProcessor.h
Base class for cluster processing tools called from CaloClusterMaker.
CaloClusterMaker::finalize
virtual StatusCode finalize() override
Definition: CaloClusterMaker.cxx:127
CaloClusterMaker::getOutputContainerName
const std::string & getOutputContainerName() const
Definition: CaloClusterMaker.cxx:189
CaloClusterMaker::m_clusterOutput
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_clusterOutput
the name of the key in StoreGate for the output CaloClusterContainer
Definition: CaloClusterMaker.h:59
CaloClusterMaker
Top algorithm to reconstruct CaloCluster objects from CaloCell objects.
Definition: CaloClusterMaker.h:36
ServiceHandle< IChronoStatSvc >