ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Calorimeter
CaloTools
src
CaloEstimatedGainTool.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
/*
3
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
4
*/
11
12
13
#ifndef CALOTOOLS_CALOESTIMATEDGAINTOOL_H
14
#define CALOTOOLS_CALOESTIMATEDGAINTOOL_H
15
16
17
#include "
CaloInterface/ICaloEstimatedGainTool.h
"
18
#include "
LArRawConditions/LArADC2MeV.h
"
19
#include "
TileConditions/TileCondIdTransforms.h
"
20
#include "
TileConditions/TileCondToolNoiseSample.h
"
21
#include "
TileConditions/TileCondToolEmscale.h
"
22
#include "
CaloIdentifier/CaloCell_ID.h
"
23
#include "
AthenaBaseComps/AthAlgTool.h
"
24
#include "
StoreGate/ReadCondHandleKey.h
"
25
#include "GaudiKernel/ToolHandle.h"
26
27
28
class
LArEM_ID
;
29
class
TileInfo
;
30
31
32
class
CaloEstimatedGainTool
33
:
public
extends<AthAlgTool, ICaloEstimatedGainTool>
34
{
35
public
:
36
using
base_class::base_class;
37
38
39
typedef
ICaloEstimatedGainTool::Step
Step
;
40
41
42
virtual
StatusCode
initialize
()
override
;
43
44
45
virtual
CaloGain::CaloGain
estimatedGain
(
const
EventContext& ctx,
46
const
CaloCell
& caloCell,
47
const
Step
step)
const override
;
48
49
virtual
CaloGain::CaloGain
estimatedGain
(
const
EventContext& ctx,
50
const
CaloCell
& caloCell,
51
const
CaloDetDescrElement
& caloDDE,
52
const
Step
step)
const override
;
53
54
virtual
CaloGain::CaloGain
estimatedGain
(
const
EventContext& ctx,
55
const
CaloDetDescrElement
& caloDDE,
56
const
float
energy,
57
const
Step
step)
const override
;
58
59
60
private
:
61
CaloGain::CaloGain
estimatedLArGain
(
const
EventContext& ctx,
62
const
CaloCell_ID::SUBCALO
iCalo,
63
const
CaloDetDescrElement
& caloDDE,
64
const
float
energy,
65
const
Step
step)
const
;
66
67
68
CaloGain::CaloGain
estimatedTileGain
(
const
EventContext& ctx,
69
const
CaloCell
& caloCell,
70
const
CaloDetDescrElement
& caloDDE,
71
const
Step
/*step*/
)
const
;
72
73
74
float
adc2mev
(
const
EventContext& ctx,
75
const
CaloDetDescrElement
& caloDDE,
76
const
CaloGain::CaloGain
gain)
const
;
77
78
SG::ReadCondHandleKey<LArADC2MeV>
m_adc2mevKey
79
{
this
,
"ADC2MeVKey"
,
"LArADC2MeV"
,
"SG Key of the LArADC2MeV CDO"
};
80
81
82
static
const
int
m_nCalos
=4;
// number of calorimeters
83
84
float
m_LowGainThresh
[
m_nCalos
] = {0};
85
float
m_HighGainThresh
[
m_nCalos
] = {0};
86
87
const
LArEM_ID
*
m_lar_em_id
=
nullptr
;
88
const
TileInfo
*
m_tileInfo
{};
89
90
ToolHandle<TileCondIdTransforms>
m_tileIdTransforms
91
{
this
,
"TileCondIdTransforms"
,
"TileCondIdTransforms"
,
92
"Tile tool to translate hardware identifiers to the drawerIdx, channel, and adc"
};
93
94
ToolHandle<TileCondToolEmscale>
m_tileToolEmscale
95
{
this
,
"TileCondToolEmscale"
,
"TileCondToolEmscale"
,
96
"Tile EM scale calibration tool"
};
97
98
ToolHandle<TileCondToolNoiseSample>
m_tileToolNoiseSample
99
{
this
,
"TileCondToolNoiseSample"
,
"TileCondToolNoiseSample"
,
100
"Tile sample noise tool"
};
101
};
102
103
104
#endif
// not CALOTOOLS_CALOESTIMATEDGAINTOOL_H
AthAlgTool.h
CaloCell_ID.h
ICaloEstimatedGainTool.h
LArADC2MeV.h
ReadCondHandleKey.h
TileCondIdTransforms.h
TileCondToolEmscale.h
TileCondToolNoiseSample.h
CaloCell_ID::SUBCALO
CaloCell_Base_ID::SUBCALO SUBCALO
Definition
CaloCell_ID.h:50
CaloCell
Data object for each calorimeter readout cell.
Definition
CaloCell.h:57
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell.
Definition
Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
CaloEstimatedGainTool
Definition
CaloEstimatedGainTool.h:34
CaloEstimatedGainTool::estimatedLArGain
CaloGain::CaloGain estimatedLArGain(const EventContext &ctx, const CaloCell_ID::SUBCALO iCalo, const CaloDetDescrElement &caloDDE, const float energy, const Step step) const
Definition
CaloEstimatedGainTool.cxx:115
CaloEstimatedGainTool::estimatedGain
virtual CaloGain::CaloGain estimatedGain(const EventContext &ctx, const CaloCell &caloCell, const Step step) const override
Definition
CaloEstimatedGainTool.cxx:49
CaloEstimatedGainTool::adc2mev
float adc2mev(const EventContext &ctx, const CaloDetDescrElement &caloDDE, const CaloGain::CaloGain gain) const
Definition
CaloEstimatedGainTool.cxx:240
CaloEstimatedGainTool::m_lar_em_id
const LArEM_ID * m_lar_em_id
Definition
CaloEstimatedGainTool.h:87
CaloEstimatedGainTool::m_tileInfo
const TileInfo * m_tileInfo
Definition
CaloEstimatedGainTool.h:88
CaloEstimatedGainTool::m_tileIdTransforms
ToolHandle< TileCondIdTransforms > m_tileIdTransforms
Definition
CaloEstimatedGainTool.h:91
CaloEstimatedGainTool::m_tileToolNoiseSample
ToolHandle< TileCondToolNoiseSample > m_tileToolNoiseSample
Definition
CaloEstimatedGainTool.h:99
CaloEstimatedGainTool::m_nCalos
static const int m_nCalos
Definition
CaloEstimatedGainTool.h:82
CaloEstimatedGainTool::m_HighGainThresh
float m_HighGainThresh[m_nCalos]
Definition
CaloEstimatedGainTool.h:85
CaloEstimatedGainTool::initialize
virtual StatusCode initialize() override
Definition
CaloEstimatedGainTool.cxx:21
CaloEstimatedGainTool::m_LowGainThresh
float m_LowGainThresh[m_nCalos]
Definition
CaloEstimatedGainTool.h:84
CaloEstimatedGainTool::m_tileToolEmscale
ToolHandle< TileCondToolEmscale > m_tileToolEmscale
Definition
CaloEstimatedGainTool.h:95
CaloEstimatedGainTool::Step
ICaloEstimatedGainTool::Step Step
Definition
CaloEstimatedGainTool.h:39
CaloEstimatedGainTool::m_adc2mevKey
SG::ReadCondHandleKey< LArADC2MeV > m_adc2mevKey
Definition
CaloEstimatedGainTool.h:79
CaloEstimatedGainTool::estimatedTileGain
CaloGain::CaloGain estimatedTileGain(const EventContext &ctx, const CaloCell &caloCell, const CaloDetDescrElement &caloDDE, const Step) const
Definition
CaloEstimatedGainTool.cxx:169
ICaloEstimatedGainTool::Step
Step
Definition
ICaloEstimatedGainTool.h:36
LArEM_ID
Helper class for LArEM offline identifiers.
Definition
LArEM_ID.h:111
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
TileInfo
Definition
TileInfo.h:49
CaloGain::CaloGain
CaloGain
Definition
CaloGain.h:11
Generated on
for ATLAS Offline Software by
1.17.0