ATLAS Offline Software
egammaLayerRecalibTool.h
Go to the documentation of this file.
1 // Dear Emacs, this is -*- C++ -*-
2 
3 /*
4  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 
8 #ifndef EGAMMA_LAYER_RECALIB_TOOL
9 #define EGAMMA_LAYER_RECALIB_TOOL
10 
21 
23 
24 // TODO: rewrite with 1 modifier <-> 1 class (not 1 modifier <-> 2 classes amount + modifier)
25 // TODO: remove all not used cases
26 
27 #include <string>
28 #include <vector>
29 #include <memory>
30 
31 #include "AsgTools/AsgTool.h"
33 #include "xAODEgamma/Egamma.h"
37 
38 #include <TH1.h>
39 #include <TH2.h>
40 #include <TFormula.h>
44 
45 
47 {
48  float averageInteractionsPerCrossing; // only for pileup correction
49  unsigned int RunNumber; // only for HV presampler correction
50  double eta;
51  double phi; // only for HV presampler correction
52  double E0raw;
53  double E1raw;
54  double E2raw;
55  double E3raw;
56 };
57 
58 
59 // TODO: add protections for invalid inputs (histogram overflows)
61 {
62  virtual float operator()(const StdCalibrationInputs & input) const = 0;
63  virtual ~GetAmountBase() { };
64  virtual GetAmountBase* clone() const = 0;
65 };
66 
67 
68 // object adaptor (prefer composition vs inheritance)
70 {
71  virtual float operator()(const StdCalibrationInputs & input) const;
72 private:
73  virtual GetAmountHVPSGuillaume* clone() const { return nullptr; };
75 };
76 
78 {
79  virtual float operator()(const StdCalibrationInputs & input) const;
80 private:
81  virtual GetAmountHVEMECPS207* clone() const { return 0;};
83 };
84 
86 {
88  virtual float operator()(const StdCalibrationInputs & inputs) const;
89 private:
90  virtual GetAmountPileupE0* clone() const { return 0; };
92 };
93 
95 {
97  virtual float operator()(const StdCalibrationInputs & inputs) const;
98 private:
99  virtual GetAmountPileupE1* clone() const { return 0; };
101 };
102 
104 {
106  virtual float operator()(const StdCalibrationInputs & inputs) const;
107 private:
108  virtual GetAmountPileupE2* clone() const { return 0; };
110 };
111 
113 {
115  virtual float operator()(const StdCalibrationInputs & inputs) const;
116 private:
117  virtual GetAmountPileupE3* clone() const { return 0; };
119 };
120 
121 
122 
124 {
125  GetAmountFormula(const TFormula & formula) : m_formula(formula) { };
126  virtual GetAmountFormula* clone() const { return new GetAmountFormula(*this); };
127  virtual float operator()(const StdCalibrationInputs & input) const;
128 protected:
129  TFormula m_formula;
130 };
131 
132 
134 {
135  GetAmountHisto1D(const TH1& histo) : m_histo(static_cast<TH1*>(histo.Clone())) { m_histo->SetDirectory(nullptr); };
136  GetAmountHisto1D(const GetAmountHisto1D & oth) : m_histo(static_cast<TH1*>(oth.m_histo->Clone())) { m_histo->SetDirectory(nullptr); };
138  if (this != &oth) // protect against invalid self-assignment
139  {
140  m_histo.reset(static_cast<TH1*>(oth.m_histo->Clone()));
141  m_histo->SetDirectory(nullptr);
142  }
143  return *this;
144  }
145  virtual GetAmountHisto1D* clone() const { return new GetAmountHisto1D(*this); };
146  virtual float operator()(const StdCalibrationInputs & input) const;
147 protected:
148  std::unique_ptr<TH1> m_histo;
149 };
150 
151 
153 {
155  virtual GetAmountHisto1D* clone() const { return new GetAmountHisto1DUp(*this); };
156  virtual float operator()(const StdCalibrationInputs & input) const;
157 };
158 
159 
161 {
163  virtual GetAmountHisto1D* clone() const { return new GetAmountHisto1DDown(*this); };
164  virtual float operator()(const StdCalibrationInputs & input) const;
165 };
166 
167 
169 {
171  virtual GetAmountHisto1D* clone() const { return new GetAmountHisto1DErrorUp(*this); };
172  virtual float operator()(const StdCalibrationInputs & input) const;
173 };
174 
175 
177 {
179  virtual GetAmountHisto1D* clone() const { return new GetAmountHisto1DErrorDown(*this); };
180  virtual float operator()(const StdCalibrationInputs & input) const;
181 };
182 
183 
185 {
186  GetAmountHisto2D(const TH2F& histo) : m_histo(histo) { m_histo.SetDirectory(nullptr); };
187  virtual GetAmountHisto2D* clone() const { return new GetAmountHisto2D(*this); };
188  virtual float operator()(const StdCalibrationInputs & input) const;
189 protected:
191 };
192 
193 
195 {
196 public:
197  GetAmountFixed(float amount) : m_amount(amount) { }
198  virtual GetAmountFixed* clone() const { return new GetAmountFixed(*this); };
199  virtual float operator()(const StdCalibrationInputs & input) const;
200 private:
201  float m_amount;
202 };
203 
204 
206 {
207 public:
209  virtual ~GetAmountDecoratorBase() { delete m_getter; }
210  virtual float operator()(const StdCalibrationInputs & input) const {
211  return (*m_getter)(input);
212  }
213 private:
215 };
216 
217 
219 {
221 
223  CP::CorrectionCode operator()(StdCalibrationInputs&, float amount) const;
224  virtual InputModifier* clone() const = 0;
225  virtual ~InputModifier() { };
226 private:
227  InputModifier() { }; // privatize default constructor
228  // here we are one based (amount == 1 <=> null scale)
229  virtual void scale_inputs(StdCalibrationInputs&, float amount) const=0;
230  virtual void shift_inputs(StdCalibrationInputs&, float amount) const=0;
232 };
233 
234 
235 struct ScaleE0 : public InputModifier
236 {
238  ScaleE0* clone() const { return new ScaleE0(*this); };
239 private:
240  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
241  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
242 };
243 
244 
245 struct ScaleE1 : public InputModifier
246 {
248  ScaleE1* clone() const { return new ScaleE1(*this); };
249 private:
250  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
251  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
252 };
253 
254 
255 struct ScaleE2 : public InputModifier
256 {
258  ScaleE2* clone() const { return new ScaleE2(*this); };
259 private:
260  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
261  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
262 };
263 
264 
265 struct ScaleE3 : public InputModifier
266 {
268  ScaleE3* clone() const { return new ScaleE3(*this); };
269 private:
270  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
271  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
272 };
273 
274 
276 {
278  ScaleE1overE2* clone() const { return new ScaleE1overE2(*this); };
279 private:
280  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
281  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
282 };
283 
284 
286 {
288  ScaleEaccordion* clone() const { return new ScaleEaccordion(*this); };
289 private:
290  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
291  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
292 };
293 
294 
296 {
298  ScaleEcalorimeter* clone() const { return new ScaleEcalorimeter(*this); };
299 private:
300  virtual void scale_inputs(StdCalibrationInputs&, float amount) const;
301  virtual void shift_inputs(StdCalibrationInputs&, float amount) const;
302 };
303 
304 
306 {
307 public:
308  typedef std::vector<std::pair<InputModifier*, GetAmountBase*> > ModifiersList;
315  egammaLayerRecalibTool(const std::string& name, const std::string& tune);
316  egammaLayerRecalibTool(const std::string& tune);
318 
320 
324  static std::pair<std::string, egammaLayerRecalibTool*> create(const std::string& type,
325  const std::string& args);
326 
334  void add_scale(InputModifier * modifier, GetAmountBase * amount);
339  void add_scale(const std::string& scale);
343  void clear_corrections();
347  void fixForMissingCells(bool fix = true) { m_aodFixMissingCells = fix; }
348 
349 private:
350 
351  static const unsigned int m_Run2Run3runNumberTransition = 400000;
352 
353  std::string m_tune;
354  const std::string resolve_path(std::string filename) const;
355  static std::string resolve_alias(const std::string& tune) ;
357 
359 
360  bool m_aodFixMissingCells = false;
361 };
362 
363 #endif // EGAMMA_LAYER_RECALIB_TOOL
InputModifier::SCALE
@ SCALE
Definition: egammaLayerRecalibTool.h:220
ScaleE2::ScaleE2
ScaleE2(NullPoint base)
Definition: egammaLayerRecalibTool.h:257
egammaLayerRecalibTool::ModifiersList
std::vector< std::pair< InputModifier *, GetAmountBase * > > ModifiersList
Definition: egammaLayerRecalibTool.h:308
base
std::string base
Definition: hcg.cxx:78
GetAmountHisto1DDown::clone
virtual GetAmountHisto1D * clone() const
Definition: egammaLayerRecalibTool.h:163
GetAmountHVPSGuillaume
Definition: egammaLayerRecalibTool.h:70
GetAmountPileupE3
Definition: egammaLayerRecalibTool.h:113
GetAmountHisto2D::clone
virtual GetAmountHisto2D * clone() const
Definition: egammaLayerRecalibTool.h:187
GetAmountPileupE2::GetAmountPileupE2
GetAmountPileupE2(corr_pileupShift *tool)
Definition: egammaLayerRecalibTool.h:105
GetAmountBase::~GetAmountBase
virtual ~GetAmountBase()
Definition: egammaLayerRecalibTool.h:63
GetAmountHVPSGuillaume::m_tool
corr_HV_EMBPS m_tool
Definition: egammaLayerRecalibTool.h:73
GetAmountHisto1D::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:53
ScaleE3::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:146
egammaLayerRecalibTool::m_aodFixMissingCells
bool m_aodFixMissingCells
Definition: egammaLayerRecalibTool.h:360
egammaLayerRecalibTool::m_pileup_tool
corr_pileupShift * m_pileup_tool
Definition: egammaLayerRecalibTool.h:358
InputModifier::ZEROBASED
@ ZEROBASED
Definition: egammaLayerRecalibTool.h:220
StdCalibrationInputs::E1raw
double E1raw
Definition: egammaLayerRecalibTool.h:53
InputModifier::SHIFT
@ SHIFT
Definition: egammaLayerRecalibTool.h:220
StdCalibrationInputs::phi
double phi
Definition: egammaLayerRecalibTool.h:51
TH2F
Definition: rootspy.cxx:420
GetAmountPileupE2::operator()
virtual float operator()(const StdCalibrationInputs &inputs) const
Definition: egammaLayerRecalibTool.cxx:113
GetAmountBase
Definition: egammaLayerRecalibTool.h:61
GetAmountHisto1DErrorDown::clone
virtual GetAmountHisto1D * clone() const
Definition: egammaLayerRecalibTool.h:179
NNPDF30NNLO.tune
tune
Definition: GeneratorFilters/share/common/NNPDF30NNLO.py:1
GetAmountPileupE0::m_tool
corr_pileupShift * m_tool
Definition: egammaLayerRecalibTool.h:90
InputModifier::InputModifier
InputModifier(NullPoint base)
Definition: egammaLayerRecalibTool.h:222
ScaleEcalorimeter::ScaleEcalorimeter
ScaleEcalorimeter(NullPoint base)
Definition: egammaLayerRecalibTool.h:297
GetAmountFixed::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:89
InputModifier::NullPoint
NullPoint
Definition: egammaLayerRecalibTool.h:220
GetAmountPileupE2::m_tool
corr_pileupShift * m_tool
Definition: egammaLayerRecalibTool.h:108
GetAmountHisto1DDown::GetAmountHisto1DDown
GetAmountHisto1DDown(const TH1 &histo)
Definition: egammaLayerRecalibTool.h:162
egammaLayerRecalibTool::scale_inputs
CP::CorrectionCode scale_inputs(StdCalibrationInputs &inputs) const
apply layer calibration to the
Definition: egammaLayerRecalibTool.cxx:896
GetAmountDecoratorBase
Definition: egammaLayerRecalibTool.h:206
ScaleE0::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:143
corr_pileupShift.h
GetAmountHVEMECPS207::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:101
GetAmountPileupE2
Definition: egammaLayerRecalibTool.h:104
xAOD::Egamma_v1
Definition: Egamma_v1.h:56
egammaLayerRecalibTool::applyCorrection
CP::CorrectionCode applyCorrection(xAOD::Egamma &, const xAOD::EventInfo &event_info) const
Definition: egammaLayerRecalibTool.cxx:910
egammaLayerRecalibTool::egammaLayerRecalibTool
egammaLayerRecalibTool(const std::string &name, const std::string &tune)
Definition: egammaLayerRecalibTool.cxx:881
GetAmountPileupE3::clone
virtual GetAmountPileupE3 * clone() const
Definition: egammaLayerRecalibTool.h:117
GetAmountHisto1DErrorUp::GetAmountHisto1DErrorUp
GetAmountHisto1DErrorUp(const TH1 &histo)
Definition: egammaLayerRecalibTool.h:170
GetAmountPileupE1::operator()
virtual float operator()(const StdCalibrationInputs &inputs) const
Definition: egammaLayerRecalibTool.cxx:109
GetAmountHisto1DUp::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:59
GetAmountFormula::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:93
corr_pileupShift
Correction for pileup induced energy shit as function of mu per layer for 2016 data.
Definition: corr_pileupShift.h:13
InputModifier::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const =0
yodamerge_tmp.scale
scale
Definition: yodamerge_tmp.py:138
ScaleE3
Definition: egammaLayerRecalibTool.h:266
egammaLayerRecalibTool::resolve_path
const std::string resolve_path(std::string filename) const
ScaleE1overE2::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:149
GetAmountHisto2D::m_histo
TH2F m_histo
Definition: egammaLayerRecalibTool.h:190
InputModifier::SUBTRACT
@ SUBTRACT
Definition: egammaLayerRecalibTool.h:220
postInclude.inputs
inputs
Definition: postInclude.SortInput.py:15
GetAmountHisto1D::GetAmountHisto1D
GetAmountHisto1D(const TH1 &histo)
Definition: egammaLayerRecalibTool.h:135
GetAmountFixed::m_amount
float m_amount
Definition: egammaLayerRecalibTool.h:201
InputModifier::~InputModifier
virtual ~InputModifier()
Definition: egammaLayerRecalibTool.h:225
GetAmountPileupE1::m_tool
corr_pileupShift * m_tool
Definition: egammaLayerRecalibTool.h:99
GetAmountHisto2D
Definition: egammaLayerRecalibTool.h:185
StdCalibrationInputs::eta
double eta
Definition: egammaLayerRecalibTool.h:50
ScaleE1::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:144
ScaleE3::ScaleE3
ScaleE3(NullPoint base)
Definition: egammaLayerRecalibTool.h:267
InputModifier::ONEBASED_ALPHA
@ ONEBASED_ALPHA
Definition: egammaLayerRecalibTool.h:220
GetAmountHisto1DErrorDown
Definition: egammaLayerRecalibTool.h:177
ScaleE0
Definition: egammaLayerRecalibTool.h:236
InputModifier::InputModifier
InputModifier()
Definition: egammaLayerRecalibTool.h:227
AsgMessaging.h
Egamma.h
ScaleE0::ScaleE0
ScaleE0(NullPoint base)
Definition: egammaLayerRecalibTool.h:237
GetAmountHisto1DErrorDown::GetAmountHisto1DErrorDown
GetAmountHisto1DErrorDown(const TH1 &histo)
Definition: egammaLayerRecalibTool.h:178
GetAmountPileupE3::GetAmountPileupE3
GetAmountPileupE3(corr_pileupShift *tool)
Definition: egammaLayerRecalibTool.h:114
ScaleEaccordion::clone
ScaleEaccordion * clone() const
Definition: egammaLayerRecalibTool.h:288
ScaleEcalorimeter
Definition: egammaLayerRecalibTool.h:296
GetAmountHisto1DDown::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:65
GetAmountFormula::clone
virtual GetAmountFormula * clone() const
Definition: egammaLayerRecalibTool.h:126
GetAmountHisto1D::operator=
GetAmountHisto1D & operator=(const GetAmountHisto1D &oth)
Definition: egammaLayerRecalibTool.h:137
egammaLayerRecalibTool::m_modifiers
ModifiersList m_modifiers
Definition: egammaLayerRecalibTool.h:356
InputModifier::ONEBASED
@ ONEBASED
Definition: egammaLayerRecalibTool.h:220
GetAmountPileupE0::operator()
virtual float operator()(const StdCalibrationInputs &inputs) const
Definition: egammaLayerRecalibTool.cxx:105
CaloCluster.h
ScaleE1::ScaleE1
ScaleE1(NullPoint base)
Definition: egammaLayerRecalibTool.h:247
GetAmountPileupE1
Definition: egammaLayerRecalibTool.h:95
corr_HV_EMBPS
Correction for time dependent HV effect in barrel presampler scale in 2012.
Definition: corr_HV_EMBPS.h:32
ScaleEaccordion::ScaleEaccordion
ScaleEaccordion(NullPoint base)
Definition: egammaLayerRecalibTool.h:287
GetAmountPileupE3::m_tool
corr_pileupShift * m_tool
Definition: egammaLayerRecalibTool.h:117
StdCalibrationInputs::E3raw
double E3raw
Definition: egammaLayerRecalibTool.h:55
GetAmountFixed::GetAmountFixed
GetAmountFixed(float amount)
Definition: egammaLayerRecalibTool.h:197
GetAmountPileupE3::operator()
virtual float operator()(const StdCalibrationInputs &inputs) const
Definition: egammaLayerRecalibTool.cxx:117
GetAmountFormula
Definition: egammaLayerRecalibTool.h:124
InputModifier::clone
virtual InputModifier * clone() const =0
GetAmountFixed
Definition: egammaLayerRecalibTool.h:195
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
egammaLayerRecalibTool::clear_corrections
void clear_corrections()
remove all the scale corrections
Definition: egammaLayerRecalibTool.cxx:972
ScaleE2::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:140
GetAmountHisto1D::GetAmountHisto1D
GetAmountHisto1D(const GetAmountHisto1D &oth)
Definition: egammaLayerRecalibTool.h:136
corr_HV_EMBPS.h
GetAmountDecoratorBase::GetAmountDecoratorBase
GetAmountDecoratorBase(GetAmountBase *getter)
Definition: egammaLayerRecalibTool.h:208
GetAmountPileupE0::clone
virtual GetAmountPileupE0 * clone() const
Definition: egammaLayerRecalibTool.h:90
StdCalibrationInputs::RunNumber
unsigned int RunNumber
Definition: egammaLayerRecalibTool.h:49
GetAmountHisto1D::clone
virtual GetAmountHisto1D * clone() const
Definition: egammaLayerRecalibTool.h:145
InputModifier::ZEROBASED_ALPHA
@ ZEROBASED_ALPHA
Definition: egammaLayerRecalibTool.h:220
GetAmountHVEMECPS207
Definition: egammaLayerRecalibTool.h:78
ScaleE1
Definition: egammaLayerRecalibTool.h:246
egammaLayerRecalibTool::m_Run2Run3runNumberTransition
static const unsigned int m_Run2Run3runNumberTransition
Definition: egammaLayerRecalibTool.h:351
GetAmountBase::operator()
virtual float operator()(const StdCalibrationInputs &input) const =0
ScaleE3::clone
ScaleE3 * clone() const
Definition: egammaLayerRecalibTool.h:268
GetAmountHisto2D::GetAmountHisto2D
GetAmountHisto2D(const TH2F &histo)
Definition: egammaLayerRecalibTool.h:186
InputModifier
Definition: egammaLayerRecalibTool.h:219
ScaleEaccordion::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:178
egammaLayerRecalibTool::add_scale
void add_scale(InputModifier *modifier, GetAmountBase *amount)
add custom layer scale correction.
Definition: egammaLayerRecalibTool.cxx:891
ScaleE1::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:139
StdCalibrationInputs::E2raw
double E2raw
Definition: egammaLayerRecalibTool.h:54
GetAmountHisto1DErrorUp
Definition: egammaLayerRecalibTool.h:169
ScaleE3::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:141
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
ScaleE1overE2::clone
ScaleE1overE2 * clone() const
Definition: egammaLayerRecalibTool.h:278
asg::AsgMessaging
Class mimicking the AthMessaging class from the offline software.
Definition: AsgMessaging.h:40
StdCalibrationInputs::averageInteractionsPerCrossing
float averageInteractionsPerCrossing
Definition: egammaLayerRecalibTool.h:48
AtlCoolConsole.tool
tool
Definition: AtlCoolConsole.py:453
GetAmountPileupE0
Definition: egammaLayerRecalibTool.h:86
ScaleE2::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:145
GetAmountHisto1D
Definition: egammaLayerRecalibTool.h:134
InputModifier::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const =0
ScaleE0::clone
ScaleE0 * clone() const
Definition: egammaLayerRecalibTool.h:238
make_hlt_rep.modifier
string modifier
Definition: make_hlt_rep.py:14
GetAmountHisto1DUp::clone
virtual GetAmountHisto1D * clone() const
Definition: egammaLayerRecalibTool.h:155
GetAmountHVPSGuillaume::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:97
egammaLayerRecalibTool::~egammaLayerRecalibTool
~egammaLayerRecalibTool()
Definition: egammaLayerRecalibTool.h:317
GetAmountHisto1DErrorDown::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:77
EventInfo.h
xAOD::EventInfo_v1
Class describing the basic event information.
Definition: EventInfo_v1.h:43
egammaLayerRecalibTool
Definition: egammaLayerRecalibTool.h:306
GetAmountHisto1DErrorUp::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:71
ScaleEaccordion
Definition: egammaLayerRecalibTool.h:286
ScaleEcalorimeter::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:185
StdCalibrationInputs
Name : egammaLayerRecalibTool.h Package : egammaLayerRecalibTool Author : R.
Definition: egammaLayerRecalibTool.h:47
GetAmountPileupE1::GetAmountPileupE1
GetAmountPileupE1(corr_pileupShift *tool)
Definition: egammaLayerRecalibTool.h:96
ScaleE1overE2
Definition: egammaLayerRecalibTool.h:276
GetAmountDecoratorBase::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.h:210
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TH1
Definition: rootspy.cxx:268
egammaLayerRecalibTool::resolve_alias
static std::string resolve_alias(const std::string &tune)
Definition: egammaLayerRecalibTool.cxx:201
GetAmountFormula::GetAmountFormula
GetAmountFormula(const TFormula &formula)
Definition: egammaLayerRecalibTool.h:125
GetAmountDecoratorBase::~GetAmountDecoratorBase
virtual ~GetAmountDecoratorBase()
Definition: egammaLayerRecalibTool.h:209
GetAmountHisto1DErrorUp::clone
virtual GetAmountHisto1D * clone() const
Definition: egammaLayerRecalibTool.h:171
GetAmountFixed::clone
virtual GetAmountFixed * clone() const
Definition: egammaLayerRecalibTool.h:198
egammaLayerRecalibTool::create
static std::pair< std::string, egammaLayerRecalibTool * > create(const std::string &type, const std::string &args)
helper to create a tool from a string (useful for command line arguments)
Definition: egammaLayerRecalibTool.cxx:1017
GetAmountPileupE2::clone
virtual GetAmountPileupE2 * clone() const
Definition: egammaLayerRecalibTool.h:108
ScaleE2
Definition: egammaLayerRecalibTool.h:256
GetAmountDecoratorBase::m_getter
GetAmountBase * m_getter
Definition: egammaLayerRecalibTool.h:214
CP::CorrectionCode
Return value from object correction CP tools.
Definition: CorrectionCode.h:31
ScaleE0::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:138
InputModifier::m_base
NullPoint m_base
Definition: egammaLayerRecalibTool.h:231
GetAmountPileupE0::GetAmountPileupE0
GetAmountPileupE0(corr_pileupShift *tool)
Definition: egammaLayerRecalibTool.h:87
CaloCellTimeCorrFiller.filename
filename
Definition: CaloCellTimeCorrFiller.py:24
GetAmountBase::clone
virtual GetAmountBase * clone() const =0
corr_HV_EMECPS.h
GetAmountPileupE1::clone
virtual GetAmountPileupE1 * clone() const
Definition: egammaLayerRecalibTool.h:99
ScaleEcalorimeter::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:193
CorrectionCode.h
ScaleEaccordion::scale_inputs
virtual void scale_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:171
egammaLayerRecalibTool::fixForMissingCells
void fixForMissingCells(bool fix=true)
apply the fix for missing cells due to timing cut
Definition: egammaLayerRecalibTool.h:347
GetAmountHVPSGuillaume::clone
virtual GetAmountHVPSGuillaume * clone() const
Definition: egammaLayerRecalibTool.h:73
GetAmountHisto1DDown
Definition: egammaLayerRecalibTool.h:161
InputModifier::operator()
CP::CorrectionCode operator()(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:122
ScaleE1::clone
ScaleE1 * clone() const
Definition: egammaLayerRecalibTool.h:248
GetAmountHisto1DUp
Definition: egammaLayerRecalibTool.h:153
egammaLayerRecalibTool::m_tune
std::string m_tune
Definition: egammaLayerRecalibTool.h:353
GetAmountHisto2D::operator()
virtual float operator()(const StdCalibrationInputs &input) const
Definition: egammaLayerRecalibTool.cxx:83
AsgTool.h
ScaleEcalorimeter::clone
ScaleEcalorimeter * clone() const
Definition: egammaLayerRecalibTool.h:298
plotBeamSpotCompare.histo
histo
Definition: plotBeamSpotCompare.py:415
GetAmountHVEMECPS207::clone
virtual GetAmountHVEMECPS207 * clone() const
Definition: egammaLayerRecalibTool.h:81
ScaleE1overE2::ScaleE1overE2
ScaleE1overE2(NullPoint base)
Definition: egammaLayerRecalibTool.h:277
GetAmountHVEMECPS207::m_toolEMECPS
corr_HV_EMECPS m_toolEMECPS
Definition: egammaLayerRecalibTool.h:81
ScaleE1overE2::shift_inputs
virtual void shift_inputs(StdCalibrationInputs &, float amount) const
Definition: egammaLayerRecalibTool.cxx:165
GetAmountHisto1DUp::GetAmountHisto1DUp
GetAmountHisto1DUp(const TH1 &histo)
Definition: egammaLayerRecalibTool.h:154
GetAmountFormula::m_formula
TFormula m_formula
Definition: egammaLayerRecalibTool.h:129
GetAmountHisto1D::m_histo
std::unique_ptr< TH1 > m_histo
Definition: egammaLayerRecalibTool.h:148
StdCalibrationInputs::E0raw
double E0raw
Definition: egammaLayerRecalibTool.h:52
corr_HV_EMECPS
Correction for wrong HV EMEC presampler correction for 20.7 processed data (2015,2016)
Definition: corr_HV_EMECPS.h:14
python.CaloScaleNoiseConfig.args
args
Definition: CaloScaleNoiseConfig.py:80
ScaleE2::clone
ScaleE2 * clone() const
Definition: egammaLayerRecalibTool.h:258