ATLAS Offline Software
CaloClusterMaker.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 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 
35 class IChronoStatSvc;
36 
38 {
39 
40  public:
41 
42  CaloClusterMaker(const std::string& name, ISvcLocator* pSvcLocator);
43  virtual ~CaloClusterMaker() override;
44  virtual StatusCode initialize() override;
45  virtual StatusCode execute(const EventContext& ctx) const override;
46  virtual StatusCode finalize() override;
47 
48  const std::string& getOutputContainerName() const;
49 
50  private:
51 
57 
58 
62 
66 
72  //std::vector<std::string> m_clusterMakerNames;
73  ToolHandleArray<CaloClusterCollectionProcessor> m_clusterMakerTools;
74 
76  //std::vector<CaloClusterCollectionProcessor*> m_clusterMakerPointers;
77 
83  //std::vector<std::string> m_clusterCorrectionNames;
84  ToolHandleArray<CaloClusterCollectionProcessor> m_clusterCorrectionTools;
85 
86  //Handle to the ChronoStatSvc
88 
95 
98 
99 
102  Gaudi::Property<bool> m_writeTriggerSpecificInfo{this, "WriteTriggerSpecificInfo", false, "Write some trigger-specific decorations and use the trigger auxiliary container."};
103 
106  SG::WriteDecorHandleKey<xAOD::CaloClusterContainer> m_mDecor_ncells {this, "Decor_ncells", "nCells", "Decorator containing the number of cells associated to a cluster"};
107 };
108 #endif // CALOREC_CALOCLUSTERMAKER_H
109 
110 
111 
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
CaloClusterMaker::m_saveSignalState
bool m_saveSignalState
controls saving the uncalibrated signal state just before the first CaloClusterCorrectionTool is invo...
Definition: CaloClusterMaker.h:94
CaloClusterMaker::m_chrono
ServiceHandle< IChronoStatSvc > m_chrono
Definition: CaloClusterMaker.h:87
CaloClusterMaker::m_clusterMakerTools
ToolHandleArray< CaloClusterCollectionProcessor > m_clusterMakerTools
a list of names for tools to make clusters
Definition: CaloClusterMaker.h:73
CaloClusterMaker::CaloClusterMaker
CaloClusterMaker(const std::string &name, ISvcLocator *pSvcLocator)
Definition: CaloClusterMaker.cxx:50
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:84
CaloClusterMaker::~CaloClusterMaker
virtual ~CaloClusterMaker() override
SG::WriteHandleKey< xAOD::CaloClusterContainer >
CaloClusterMaker::initialize
virtual StatusCode initialize() override
Definition: CaloClusterMaker.cxx:93
WriteDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
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:97
CaloClusterMaker::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: CaloClusterMaker.cxx:141
AthReentrantAlgorithm.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
CaloClusterMaker::m_mDecor_ncells
SG::WriteDecorHandleKey< xAOD::CaloClusterContainer > m_mDecor_ncells
Key to the handle for writing the number of cells as a decoration.
Definition: CaloClusterMaker.h:106
CaloClusterMaker::m_clusterCellLinkOutput
SG::WriteHandleKey< CaloClusterCellLinkContainer > m_clusterCellLinkOutput
the name of the key in StoreGate for the output CaloClusterCellLinkContainer
Definition: CaloClusterMaker.h:65
CaloClusterCollectionProcessor.h
Base class for cluster processing tools called from CaloClusterMaker.
CaloClusterMaker::finalize
virtual StatusCode finalize() override
Definition: CaloClusterMaker.cxx:135
CaloClusterMaker::m_writeTriggerSpecificInfo
Gaudi::Property< bool > m_writeTriggerSpecificInfo
If true, writes some trigger-specific decorations.
Definition: CaloClusterMaker.h:102
CaloClusterMaker::getOutputContainerName
const std::string & getOutputContainerName() const
Definition: CaloClusterMaker.cxx:218
CaloClusterMaker::m_clusterOutput
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_clusterOutput
the name of the key in StoreGate for the output CaloClusterContainer
Definition: CaloClusterMaker.h:61
CaloClusterMaker
Top algorithm to reconstruct CaloCluster objects from CaloCell objects.
Definition: CaloClusterMaker.h:38
ServiceHandle< IChronoStatSvc >