ATLAS Offline Software
TileCondToolEmscale.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // Tile includes
8 
9 // Athena includes
12 
13 
14 //
15 //____________________________________________________________________
16 static const InterfaceID IID_TileCondToolEmscale("TileCondToolEmscale", 1, 0);
17 
18 const InterfaceID& TileCondToolEmscale::interfaceID() {
19  return IID_TileCondToolEmscale;
20 }
21 
22 //
23 //____________________________________________________________________
24 TileCondToolEmscale::TileCondToolEmscale(const std::string& type, const std::string& name,
25  const IInterface* parent)
27 {
28  declareInterface<TileCondToolEmscale>(this);
29 
30 }
31 
32 //
33 //____________________________________________________________________
35 }
36 
37 //
38 //____________________________________________________________________
40 
41  ATH_MSG_DEBUG( "In initialize()" );
43  return StatusCode::SUCCESS;
44 }
45 
46 //
47 //____________________________________________________________________
49 
50  ATH_MSG_DEBUG( "finalize called" );
51  return StatusCode::SUCCESS;
52 
53 }
54 
55 
56 //
57 //____________________________________________________________________
58 float TileCondToolEmscale::undoOnlCalib(unsigned int drawerIdx, unsigned int channel, unsigned int adc
59  , float amplitude, TileRawChannelUnit::UNIT onlUnit) const {
60 
62  return emScale->undoOnlineChannelCalibration(drawerIdx, channel, adc, amplitude, onlUnit);
63 
64 }
65 
66 //
67 //____________________________________________________________________
68 float TileCondToolEmscale::channelCalib(unsigned int drawerIdx, unsigned int channel, unsigned int adc
69  , float amplitude, TileRawChannelUnit::UNIT rawDataUnitIn
70  , TileRawChannelUnit::UNIT rawDataUnitOut) const {
71 
73  return emScale->calibrateChannel(drawerIdx, channel, adc, amplitude, rawDataUnitIn, rawDataUnitOut);
74 
75 }
76 
77 //
78 //____________________________________________________________________
79 float TileCondToolEmscale::doCalibEms(unsigned int drawerIdx, unsigned int channel, float amplitude) const {
80 
82  return emScale->applyEMScaleCalibration(drawerIdx, channel, amplitude);
83 
84 }
85 
86 //
87 //____________________________________________________________________
88 float TileCondToolEmscale::doCalibCes(unsigned int drawerIdx, unsigned int channel, float amplitude, bool applyLasCorr) const {
89 
91  return emScale->applyCesiumCalibration(drawerIdx, channel, amplitude, applyLasCorr);
92 
93 }
94 
95 //
96 //____________________________________________________________________
97 float TileCondToolEmscale::doCalibLas(unsigned int drawerIdx, unsigned int channel, float amplitude) const {
98 
100  return emScale->applyLaserCalibration(drawerIdx, channel, amplitude);
101 
102 }
103 
104 //
105 //____________________________________________________________________
106 float TileCondToolEmscale::doCalibCis(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude) const {
107 
109  return emScale->applyChargeCalibration(drawerIdx, channel, adc, amplitude);
110 
111 }
112 
113 //
114 //____________________________________________________________________
115 float TileCondToolEmscale::channelCalibOnl(unsigned int drawerIdx, unsigned int channel, unsigned int adc
116  , float amplitude, TileRawChannelUnit::UNIT onlUnit) const {
117 
119  return emScale->calibrateOnlineChannel(drawerIdx, channel, adc, amplitude, onlUnit);
120 
121 }
122 
123 //
124 //____________________________________________________________________
125 float TileCondToolEmscale::doCalibEmsOnl(unsigned int drawerIdx, unsigned int channel, float amplitude) const {
126 
128  return emScale->applyOnlineEMScaleCalibration(drawerIdx, channel, amplitude);
129 
130 }
131 
132 //
133 //____________________________________________________________________
134 float TileCondToolEmscale::doCalibCesOnl(unsigned int drawerIdx, unsigned int channel, float amplitude, bool applyLasCorr) const {
135 
137  return emScale->applyOnlineCesiumCalibration(drawerIdx, channel, amplitude, applyLasCorr);
138 
139 }
140 
141 //
142 //____________________________________________________________________
143 float TileCondToolEmscale::doCalibLasOnl(unsigned int drawerIdx, unsigned int channel, float amplitude) const {
144 
146  return emScale->applyOnlineLaserCalibration(drawerIdx, channel, amplitude);
147 
148 }
149 
150 //
151 //____________________________________________________________________
152 float TileCondToolEmscale::doCalibCisOnl(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude) const {
153 
155  return emScale->applyOnlineChargeCalibration(drawerIdx, channel, adc, amplitude);
156 
157 }
158 
159 //
160 //____________________________________________________________________
161 float TileCondToolEmscale::getCesRefLas(unsigned int drawerIdx, unsigned int channel, unsigned int adc) const {
162 
164  return emScale->getCesiumReferenceLaserGain(drawerIdx, channel, adc);
165 
166 }
167 
168 //
169 //____________________________________________________________________
170 float TileCondToolEmscale::getCesRefHv(unsigned int drawerIdx, unsigned int channel) const {
171 
173  return emScale->getCesiumReferenceHV(drawerIdx, channel);
174 
175 }
176 
177 //
178 //____________________________________________________________________
179 float TileCondToolEmscale::getCesRefTemp(unsigned int drawerIdx, unsigned int channel) const {
180 
182  return emScale->getCesiumReferenceTemperature(drawerIdx, channel);
183 
184 }
185 
186 //
187 //____________________________________________________________________
188 float TileCondToolEmscale::getLasFiber(unsigned int drawerIdx, unsigned int channel) const {
189 
191  return emScale->getLaserFiberVariation(drawerIdx, channel);
192 
193 }
194 
195 //
196 //____________________________________________________________________
197 float TileCondToolEmscale::getLasPartition(unsigned int drawerIdx) const {
198 
200  return emScale->getLaserPartitionVariation(drawerIdx);
201 
202 }
203 
204 //
205 //____________________________________________________________________
206 float TileCondToolEmscale::getLasRefHv(unsigned int drawerIdx, unsigned int channel) const {
207 
209  return emScale->getLaserReferenceHV(drawerIdx, channel);
210 
211 }
212 
213 
214 //
215 //____________________________________________________________________
217 
219  return emScale->getOnlineCacheUnit();
220 
221 }
TileCondToolEmscale::initialize
virtual StatusCode initialize() override
Definition: TileCondToolEmscale.cxx:39
TileCondToolEmscale::doCalibEms
float doCalibEms(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Calibration to EM scale: Equalized pC -> MeV.
Definition: TileCondToolEmscale.cxx:79
TileEMScale::getCesiumReferenceTemperature
float getCesiumReferenceTemperature(unsigned int drawerIdx, unsigned int channel) const
Return the drawer temperature as measured during last cesium equalization.
Definition: TileEMScale.cxx:372
TileEMScale::applyOnlineCesiumCalibration
float applyOnlineCesiumCalibration(unsigned int drawerIdx, unsigned int channel, float amplitude, bool applyLasCorr=true) const
Apply online cesium calibration constant.
Definition: TileEMScale.cxx:327
TileCondToolEmscale::m_emScaleKey
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Definition: TileCondToolEmscale.h:259
TileCondToolEmscale::getLasRefHv
float getLasRefHv(unsigned int drawerIdx, unsigned int channel) const
Returns the reference PMT HV from appropriate laser calibration.
Definition: TileCondToolEmscale.cxx:206
TileCondToolEmscale::getOnlCacheUnit
TileRawChannelUnit::UNIT getOnlCacheUnit() const
Returns the unit of cached online calibration constants.
Definition: TileCondToolEmscale.cxx:216
plotting.yearwise_efficiency.channel
channel
Definition: yearwise_efficiency.py:28
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
TileEMScale::getCesiumReferenceLaserGain
float getCesiumReferenceLaserGain(unsigned int drawerIdx, unsigned int channel, unsigned int adc) const
Return the PMT gain reference as measured by the laser system.
Definition: TileEMScale.cxx:358
TileEMScale::applyOnlineEMScaleCalibration
float applyOnlineEMScaleCalibration(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Calibrate online chnnel to EM scale: Equalized pC -> MeV.
Definition: TileEMScale.cxx:320
TileCondToolEmscale::getCesRefTemp
float getCesRefTemp(unsigned int drawerIdx, unsigned int channel) const
Returns the drawer temperature as measured during last cesium equalization.
Definition: TileCondToolEmscale.cxx:179
TileCondToolEmscale::doCalibLasOnl
float doCalibLasOnl(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Online application of laser (PMT linearity) correction.
Definition: TileCondToolEmscale.cxx:143
TileCondToolEmscale::undoOnlCalib
float undoOnlCalib(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT onlUnit) const
Undoes the calibration applied in ROD signal reconstruction.
Definition: TileCondToolEmscale.cxx:58
TileCondToolEmscale::TileCondToolEmscale
TileCondToolEmscale(const std::string &type, const std::string &name, const IInterface *parent)
Definition: TileCondToolEmscale.cxx:24
TileEMScale::applyLaserCalibration
float applyLaserCalibration(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Apply laser correction.
Definition: TileEMScale.cxx:222
TileEMScale::getOnlineCacheUnit
TileRawChannelUnit::UNIT getOnlineCacheUnit() const
Return the unit of cached online calibration constants.
Definition: TileEMScale.h:440
TileCalibUtils.h
TileEMScale::applyOnlineLaserCalibration
float applyOnlineLaserCalibration(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Apply online laser (PMT linearity) correction.
Definition: TileEMScale.cxx:341
ReadCondHandle.h
TileCondToolEmscale::doCalibLas
float doCalibLas(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Application of laser (PMT linearity) correction.
Definition: TileCondToolEmscale.cxx:97
TileCondToolEmscale::doCalibCisOnl
float doCalibCisOnl(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude) const
Online Application of CIS calibration: ADC counts -> pC.
Definition: TileCondToolEmscale.cxx:152
TileCondToolEmscale::channelCalib
float channelCalib(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT rawDataUnitIn, TileRawChannelUnit::UNIT rawDataUnitOut) const
Calibrates a Tile channel.
Definition: TileCondToolEmscale.cxx:68
TileEMScale::calibrateChannel
float calibrateChannel(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT rawDataUnitIn, TileRawChannelUnit::UNIT rawDataUnitOut) const
Calibrate a Tile channel.
Definition: TileEMScale.cxx:136
TileEMScale::getLaserReferenceHV
float getLaserReferenceHV(unsigned int drawerIdx, unsigned int channel) const
Returns the reference PMT HV from appropriate laser calibration.
Definition: TileEMScale.cxx:394
TileCondToolEmscale.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
TileCondToolEmscale::~TileCondToolEmscale
virtual ~TileCondToolEmscale()
Definition: TileCondToolEmscale.cxx:34
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
TileEMScale::applyChargeCalibration
float applyChargeCalibration(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude) const
Apply CIS calibration: ADC counts -> pC.
Definition: TileEMScale.cxx:264
TileCondToolEmscale::getCesRefHv
float getCesRefHv(unsigned int drawerIdx, unsigned int channel) const
Returns the reference PMT HV set in last cesium calibration.
Definition: TileCondToolEmscale.cxx:170
TileRawChannelUnit::UNIT
UNIT
Definition: TileRawChannelUnit.h:16
TileCondToolEmscale::doCalibEmsOnl
float doCalibEmsOnl(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Online calibration to EM scale: Equalized pC -> MeV.
Definition: TileCondToolEmscale.cxx:125
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
errorcheck.h
Helpers for checking error return status codes and reporting errors.
TileEMScale::applyCesiumCalibration
float applyCesiumCalibration(unsigned int drawerIdx, unsigned int channel, float amplitude, bool applyLasCorr=true) const
Apply cesium calibration constant.
Definition: TileEMScale.cxx:208
TileEMScale::getLaserPartitionVariation
float getLaserPartitionVariation(unsigned int drawerIdx) const
Return laser partition relative variation.
Definition: TileEMScale.cxx:386
TileCondToolEmscale::getCesRefLas
float getCesRefLas(unsigned int drawerIdx, unsigned int channel, unsigned int adc) const
Returns the PMT gain reference as measured by the laser system.
Definition: TileCondToolEmscale.cxx:161
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
TileEMScale::getLaserFiberVariation
float getLaserFiberVariation(unsigned int drawerIdx, unsigned int channel) const
Return laser fiber relative variation.
Definition: TileEMScale.cxx:379
TileCondToolEmscale::finalize
virtual StatusCode finalize() override
Definition: TileCondToolEmscale.cxx:48
TileEMScale::undoOnlineChannelCalibration
float undoOnlineChannelCalibration(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT onlUnit) const
Undo the calibration applied in ROD signal reconstruction.
Definition: TileEMScale.cxx:97
ReadFloatFromCool.adc
adc
Definition: ReadFloatFromCool.py:48
TileEMScale::applyOnlineChargeCalibration
float applyOnlineChargeCalibration(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude) const
Apply online CIS calibration: ADC counts -> pC.
Definition: TileEMScale.cxx:349
TileCondToolEmscale::doCalibCis
float doCalibCis(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude) const
Application of CIS calibration: ADC counts -> pC.
Definition: TileCondToolEmscale.cxx:106
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TileEMScale::calibrateOnlineChannel
float calibrateOnlineChannel(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT onlUnit) const
Calibrate an online Tile channel from OnlineADCcounts to an arbitrary Online unit,...
Definition: TileEMScale.cxx:292
TileCondToolEmscale::doCalibCes
float doCalibCes(unsigned int drawerIdx, unsigned int channel, float amplitude, bool applyLasCorr=true) const
Application of cesium calibration constant.
Definition: TileCondToolEmscale.cxx:88
TileCondToolEmscale::getLasPartition
float getLasPartition(unsigned int drawerIdx) const
Returns laser partition relative variation.
Definition: TileCondToolEmscale.cxx:197
TileCondToolEmscale::doCalibCesOnl
float doCalibCesOnl(unsigned int drawerIdx, unsigned int channel, float amplitude, bool applyLasCorr=true) const
Online application of cesium calibration constant.
Definition: TileCondToolEmscale.cxx:134
AthAlgTool
Definition: AthAlgTool.h:26
TileCondToolEmscale::channelCalibOnl
float channelCalibOnl(unsigned int drawerIdx, unsigned int channel, unsigned int adc, float amplitude, TileRawChannelUnit::UNIT onlUnit) const
Calibrates an online Tile channel from OnlineADCcounts to an arbitrary Online unit,...
Definition: TileCondToolEmscale.cxx:115
TileEMScale::getCesiumReferenceHV
float getCesiumReferenceHV(unsigned int drawerIdx, unsigned int channel) const
Return the reference PMT HV set in last cesium calibration.
Definition: TileEMScale.cxx:365
TileEMScale::applyEMScaleCalibration
float applyEMScaleCalibration(unsigned int drawerIdx, unsigned int channel, float amplitude) const
Calibrate a Tile channel to EM scale: Equalized pC -> MeV.
Definition: TileEMScale.cxx:201
TileCondToolEmscale::interfaceID
static const InterfaceID & interfaceID()
Definition: TileCondToolEmscale.cxx:18
TileCondToolEmscale::getLasFiber
float getLasFiber(unsigned int drawerIdx, unsigned int channel) const
Returns laser fiber relative variation.
Definition: TileCondToolEmscale.cxx:188