ATLAS Offline Software
LumiCalibrator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
11 #ifndef LUMIBLOCKCOMPS_LumiCalibrator_H
12 #define LUMIBLOCKCOMPS_LumiCalibrator_H
13 
14 #include "CoralBase/AttributeList.h"
15 #include "GaudiKernel/MsgStream.h"
16 
17 #include <vector>
18 #include <string>
19 
21 
22  public:
23 
25 
26  // Pass DB object to set parameters, return False on error
27  bool setCalibration(const coral::AttributeList& attrList);
28 
29  // Return False on error
30  bool calibrateMu(float rawLumi, float& calMu) const;
31  bool calibrateLumi(float rawLumi, float& calLumi) const;
32 
33  float getMuToLumi() const {return m_muToLumi;}
34 
35  // Allow to dump out the calibration values
36  MsgStream& dump(MsgStream&) const;
37 
38  private:
39 
40  unsigned int m_nPar;
41  std::string m_fType;
42  float m_muToLumi;
43  std::vector<float> m_parVec;
44 
45  static float getMuVis(float rawPerBX, float sigo, float siga) ;
46  static float getMuVis2(float rawPerBX, float sigo, float siga) ;
47 
48 };
49 
50 MsgStream& operator<< (MsgStream& ,const LumiCalibrator&);
51 
52 inline MsgStream& operator<< (MsgStream& stream, const LumiCalibrator& lc)
53 {
54  return lc.dump(stream);
55 }
56 
57 #endif
LumiCalibrator::m_nPar
unsigned int m_nPar
Definition: LumiCalibrator.h:40
operator<<
MsgStream & operator<<(MsgStream &, const LumiCalibrator &)
Definition: LumiCalibrator.h:52
LumiCalibrator::m_muToLumi
float m_muToLumi
Definition: LumiCalibrator.h:42
LumiCalibrator::setCalibration
bool setCalibration(const coral::AttributeList &attrList)
Definition: LumiCalibrator.cxx:26
LumiCalibrator::LumiCalibrator
LumiCalibrator()
Definition: LumiCalibrator.cxx:16
python.PyKernel.AttributeList
AttributeList
Definition: PyKernel.py:36
python.LumiCalcHtml.lc
lc
Definition: LumiCalcHtml.py:579
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
LumiCalibrator::getMuVis2
static float getMuVis2(float rawPerBX, float sigo, float siga)
Definition: LumiCalibrator.cxx:214
LumiCalibrator::dump
MsgStream & dump(MsgStream &) const
Definition: LumiCalibrator.cxx:251
LumiCalibrator::m_parVec
std::vector< float > m_parVec
Definition: LumiCalibrator.h:43
LumiCalibrator::getMuVis
static float getMuVis(float rawPerBX, float sigo, float siga)
Definition: LumiCalibrator.cxx:180
LumiCalibrator
Utility class to apply calibrations from /TDAQ/OLC/CALIBRATIONS folder.
Definition: LumiCalibrator.h:20
LumiCalibrator::m_fType
std::string m_fType
Definition: LumiCalibrator.h:41
LumiCalibrator::calibrateLumi
bool calibrateLumi(float rawLumi, float &calLumi) const
Definition: LumiCalibrator.cxx:54
LumiCalibrator::getMuToLumi
float getMuToLumi() const
Definition: LumiCalibrator.h:33
LumiCalibrator::calibrateMu
bool calibrateMu(float rawLumi, float &calMu) const
Definition: LumiCalibrator.cxx:65