ATLAS Offline Software
Loading...
Searching...
No Matches
CaloLCWeightTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CALOUTILS_CALOLCWEIGHTTOOL_H
6#define CALOUTILS_CALOLCWEIGHTTOOL_H
20
23#include "GaudiKernel/ToolHandle.h"
27#include "GaudiKernel/EventContext.h"
28
29class CaloCell_ID;
30class CaloCluster;
31
32class CaloLCWeightTool : public extends<AthAlgTool, IClusterCellWeightTool>
33{
34 public:
35 using base_class::base_class;
37
38 virtual StatusCode weight(xAOD::CaloCluster* theCluster, const EventContext& ctx) const override;
39 virtual StatusCode initialize() override;
40
41 private:
42
45 SG::ReadCondHandleKey<CaloLocalHadCoeff> m_key{this, "CorrectionKey", "HadWeights"};
46
52 Gaudi::Property<double> m_signalOverNoiseCut{this, "SignalOverNoiseCut", 2};
53
61 Gaudi::Property<bool> m_useHadProbability{this, "UseHadProbability", false} ;
62
63
68
69 std::vector<std::string> m_sampnames;
70
73 Gaudi::Property<bool> m_interpolate{this, "Interpolate", false};
74
77 Gaudi::Property<bool> m_updateSamplingVars{this, "UpdateSamplingVars", false};
78
81 Gaudi::Property<std::vector<std::string>> m_interpolateDimensionNames{this, "InterpolateDimensionNames"
82 , {"DIMW_ETA", "DIMW_ENER", "DIMW_EDENS"}};
83
86 std::vector<int> m_interpolateDimensions;
87
89
90 SG::ReadCondHandleKey<CaloNoise> m_noiseCDOKey{this,"CaloNoiseKey","electronicNoise","SG Key of CaloNoise data object"};
91};
92
93#endif
94
95
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
Principal data class for CaloCell clusters.
calculates hadronic cell weights based on cluster and cell quantities
Gaudi::Property< bool > m_useHadProbability
look for em-probability moment and apply relative weight only
Gaudi::Property< bool > m_interpolate
interpolate correction coefficients
Gaudi::Property< double > m_signalOverNoiseCut
minimal signal/elec_noise ratio for a cell to be weighted
Gaudi::Property< bool > m_updateSamplingVars
update also sampling variables
const CaloCell_ID * m_calo_id
SG::ReadCondHandleKey< CaloNoise > m_noiseCDOKey
SG::ReadCondHandleKey< CaloLocalHadCoeff > m_key
name of the key for had cell weights
std::vector< int > m_interpolateDimensions
actual set of dimension id's to interpolate
std::vector< std::string > m_sampnames
vector of names of individual samplings
virtual StatusCode initialize() override
Gaudi::Property< std::vector< std::string > > m_interpolateDimensionNames
vector of names of dimensions in look-up tables to interpolate
virtual StatusCode weight(xAOD::CaloCluster *theCluster, const EventContext &ctx) const override
virtual ~CaloLCWeightTool()
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.