ATLAS Offline Software
Loading...
Searching...
No Matches
CaloClusterMomentsMaker_DigiHSTruth.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4//Dear emacs, this is -*-c++-*-
5#ifndef CALOCLUSTERMOMENTSMAKER_DIGIHSTRUTH_H
6#define CALOCLUSTERMOMENTSMAKER_DIGIHSTRUTH_H
32
33#include "GaudiKernel/ToolHandle.h"
34
35class CaloCell_ID;
36
43
44#include <string>
45#include <vector>
46
48{
49 public:
50 CaloClusterMomentsMaker_DigiHSTruth(const std::string& type, const std::string& name,
51 const IInterface* parent);
52
54 virtual StatusCode execute(const EventContext& ctx,
55 xAOD::CaloClusterContainer* theClusColl) const override final;
56 virtual StatusCode initialize() override;
57 virtual StatusCode finalize() override;
58
59
60 private:
61
68 std::vector<std::string> m_momentsNames;
69
76 std::vector<xAOD::CaloCluster::MomentType> m_validMoments;
77
79
83
91
101
109
112
115
118
123
124 ToolHandle<CaloDepthTool> m_caloDepthTool;
125
127 this,
128 "CaloDetDescrManager",
129 "CaloDetDescrManager"
130 };
131
132 SG::ReadHandleKey<CaloCellContainer> m_signalCellKey{this,"SignalCells","AllCalo_DigiHSTruth"};
133
136 SG::ReadCondHandleKey<CaloNoise> m_noiseCDOKey{this,"CaloNoiseKey","totalNoise","SG Key of CaloNoise data object"};
137 ToolHandle<ILArHVFraction> m_larHVFraction;
138
140 std::string m_momentsNamesAOD;
145
148 bool m_secondTime = { false };
149
152 double m_etaInnerWheel = { 2.52 };
153
154 Gaudi::Property<bool> m_useGPUCriteria {this, "UseGPUCriteria", false, "Adopt a set of criteria that is consistent with the GPU implementation."};
155};
156
157#endif // CALOCLUSTERMOMENTSMAKER_H
Base class for cluster processing tools called from CaloClusterMaker.
Declaration of CaloDepthTool.
Definition of CaloDetDescrManager.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *collection) const =0
Execute on an entire collection of clusters.
double m_minRLateral
the minimal in the definition of the Lateral moment
SG::ReadCondHandleKey< CaloNoise > m_noiseCDOKey
Key of the CaloNoise Conditions data object.
std::vector< std::string > m_momentsNames
vector holding the input list of names of moments to calculate.
double m_etaInnerWheel
Transition from outer to inner wheel in EME2.
bool m_secondTime
Retrieve second moment of cell times and store as moment.
double m_minBadLArQuality
the minimal cell quality in the LAr for declaring a cell bad
SG::ReadHandleKey< CaloCellContainer > m_signalCellKey
bool m_calculateLArHVFraction
Set to true to calculate E and N of cells affected by LAr HV corrections.
bool m_absOpt
if set to true use abs E value of cells to calculate
virtual StatusCode execute(const EventContext &ctx, xAOD::CaloClusterContainer *theClusColl) const override final
Execute on an entire collection of clusters.
bool m_calculateIsolation
Set to true if cluster isolation is to be calculated.
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
bool m_twoGaussianNoise
if set to true use 2-gaussian noise description for TileCal
double m_maxAxisAngle
the maximal allowed deviation from the IP-to-ClusterCenter-axis.
double m_minLLongitudinal
the minimal in the definition of the Longitudinal moment
bool m_calculateSignificance
Set to true if significance moments are need.
CaloClusterMomentsMaker_DigiHSTruth(const std::string &type, const std::string &name, const IInterface *parent)
std::vector< xAOD::CaloCluster::MomentType > m_validMoments
set of moments which will be calculated.
std::string m_momentsNamesAOD
Not used anymore (with xAOD), but required when configured from COOL.
Property holding a SG store/key/clid from which a ReadHandle is made.
CaloClusterContainer_v1 CaloClusterContainer
Define the latest version of the calorimeter cluster container.