ATLAS Offline Software
TrigCaloClusterCalibrator.h
Go to the documentation of this file.
1 // Hi Emacs ! this is -* C++ -*-
2 
3 /*
4  * Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5  */
6 
7 /********************************************************************
8  *
9  * NAME: TrigCaloClusterCalibrator
10  * PACKAGE: Trigger/TrigAlgorithms/TrigCaloRec
11  *
12  * AUTHOR: Jon Burr
13  * CREATED: 2020/07/10
14  *
15  * Shallow copy an existing cluster container and apply cluster processors to
16  * it. Largely copied from the TrigCaloClusterMaker.
17  *********************************************************************/
18 
19 #ifndef TRIGCALOREC_TRIGCALOCLUSTERCALIBRATOR_H
20 #define TRIGCALOREC_TRIGCALOCLUSTERCALIBRATOR_H
21 
27 #include "GaudiKernel/ToolHandle.h"
30 
32  public:
33  TrigCaloClusterCalibrator(const std::string& name, ISvcLocator* pSvcLocator);
34 
35  virtual StatusCode initialize() override;
36  virtual StatusCode execute(const EventContext& ctx) const override;
37 
38  private:
39  ToolHandleArray<CaloClusterProcessor> m_clusterCorrections
40  {this, "ClusterCorrectionTools", {}, ""};
41 
43  this, "InputClusters", "",
44  "The input calocluster container to be shallow copied"};
45 
47  this, "OutputClusters", "",
48  "The output, calibrated calocluster container"};
49 
51  this, "OutputCellLinks", "",
52  "The output cell links containing the updated weights"};
53 
54  ToolHandle<GenericMonitoringTool> m_monTool{
55  this, "MonTool", "", "The monitoring tool"};
56 
57  Gaudi::Property<bool> m_isSW{
58  this, "IsSW", false,
59  "Is this running corrections to 'SW' clusters? If it is, then cluster "
60  "processors will be run selectively based on the cluster's eta"};
61 }; //> end class TrigCaloClusterCalibrator
62 
63 #endif //> !TRIGCALOREC_TRIGCALOCLUSTERCALIBRATOR_H
CaloClusterProcessor.h
Base class for cluster processing tools called from CaloClusterMaker that operate on individual clust...
TrigCaloClusterCalibrator::m_clusterCorrections
ToolHandleArray< CaloClusterProcessor > m_clusterCorrections
Definition: TrigCaloClusterCalibrator.h:50
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
TrigCaloClusterCalibrator::m_inputClustersKey
SG::ReadHandleKey< xAOD::CaloClusterContainer > m_inputClustersKey
Definition: TrigCaloClusterCalibrator.h:52
SG::ReadHandleKey< xAOD::CaloClusterContainer >
TrigCaloClusterCalibrator::m_outputCellLinksKey
SG::WriteHandleKey< CaloClusterCellLinkContainer > m_outputCellLinksKey
Definition: TrigCaloClusterCalibrator.h:60
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
TrigCaloClusterCalibrator::TrigCaloClusterCalibrator
TrigCaloClusterCalibrator(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TrigCaloClusterCalibrator.cxx:26
GenericMonitoringTool.h
SG::WriteHandleKey< xAOD::CaloClusterContainer >
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
AthReentrantAlgorithm.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
TrigCaloClusterCalibrator
Definition: TrigCaloClusterCalibrator.h:31
TrigCaloClusterCalibrator::m_isSW
Gaudi::Property< bool > m_isSW
Definition: TrigCaloClusterCalibrator.h:67
TrigCaloClusterCalibrator::m_outputClustersKey
SG::WriteHandleKey< xAOD::CaloClusterContainer > m_outputClustersKey
Definition: TrigCaloClusterCalibrator.h:56
TrigCaloClusterCalibrator::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: TrigCaloClusterCalibrator.cxx:49
CaloClusterContainer.h
TrigCaloClusterCalibrator::initialize
virtual StatusCode initialize() override
Definition: TrigCaloClusterCalibrator.cxx:32
TrigCaloClusterCalibrator::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: TrigCaloClusterCalibrator.h:64