ATLAS Offline Software
CaloHadWeight.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 
8 #ifndef CALOCONDITIONS_CALOHADWEIGHT_H
9 #define CALOCONDITIONS_CALOHADWEIGHT_H
10 
11 
12 #include "AthenaKernel/CLASS_DEF.h"
13 #include <vector>
14 
20 
21 public:
22 
23  struct HadData {
24  float m_weight;
25  float m_entries;
26  float m_error;
27  HadData() : m_weight(0),m_entries(0),m_error(0) {};
28  };
29 
30  //** Default Constructor
31  CaloHadWeight();
32 
33  CaloHadWeight(const int & nBinEta,
34  const float & MinEta,
35  const float & MaxEta,
36  const int & nBinSampling,
37  const int & MinSampling,
38  const int & MaxSampling,
39  const int & nBinLogEClus,
40  const float & MinLogEClus,
41  const float & MaxLogEClus,
42  const int & nBinLogEDensCell,
43  const float & MinLogEDensCell,
44  const float & MaxLogEDensCell
45  );
46 
47  // access methods
48 
49  inline const int & getNbinsEta() const {return m_nBinEta;}
50  inline const float & getEtaMin() const {return m_MinEta;}
51  inline const float & getEtaMax() const {return m_MaxEta;}
52 
53  inline const int & getNbinsSampling() const {return m_nBinSampling;}
54  inline const int & getSamplingMin() const {return m_MinSampling;}
55  inline const int & getSamplingMax() const {return m_MaxSampling;}
56 
57  inline const int & getNbinsLogEClus() const {return m_nBinLogEClus;}
58  inline const float & getLogEClusMin() const {return m_MinLogEClus;}
59  inline const float & getLogEClusMax() const {return m_MaxLogEClus;}
60 
61  inline const int & getNbinsLogEDensCell() const {return m_nBinLogEDensCell;}
62  inline const float & getLogEDensCellMin() const {return m_MinLogEDensCell;}
63  inline const float & getLogEDensCellMax() const {return m_MaxLogEDensCell;}
64 
65  const struct HadData * getHadData(const float & eta, const int & sampling, const float & logEClus, const float & logEDensCell) const;
66 
67  // set methods
68 
69  void setHadData(const float & eta, const int & sampling, const float & logEClus, const float & logEDensCell, const struct HadData & theData);
70 
71 
72 private:
73 
74  int m_nBinEta;
78 
79  float m_MinEta;
83 
84  float m_MaxEta;
88 
89  std::vector<int> m_indexEtaSampling;
90  std::vector<struct HadData> m_data;
91 
92  int getEtaSamplingBin(const float & eta, const int & sampling) const;
93 
94  int getBin(const float & eta, const int & sampling, const float & logEClus, const float & logEDensCell) const;
95 
96 
97 };//end class
98 
99 CLASS_DEF(CaloHadWeight,124150759,1)
100 
101 #endif
CaloHadWeight::getBin
int getBin(const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell) const
Definition: CaloHadWeight.cxx:98
CaloHadWeight::m_nBinSampling
int m_nBinSampling
Definition: CaloHadWeight.h:75
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
CaloHadWeight::m_MaxLogEDensCell
float m_MaxLogEDensCell
Definition: CaloHadWeight.h:87
CaloHadWeight::getNbinsLogEDensCell
const int & getNbinsLogEDensCell() const
Definition: CaloHadWeight.h:61
CaloHadWeight::getLogEClusMax
const float & getLogEClusMax() const
Definition: CaloHadWeight.h:59
CaloHadWeight::HadData
Definition: CaloHadWeight.h:23
CaloHadWeight::HadData::m_error
float m_error
Definition: CaloHadWeight.h:26
CaloHadWeight::HadData::m_entries
float m_entries
Definition: CaloHadWeight.h:25
CaloHadWeight::CaloHadWeight
CaloHadWeight()
Definition: CaloHadWeight.cxx:9
CaloHadWeight::getNbinsEta
const int & getNbinsEta() const
Definition: CaloHadWeight.h:49
CaloHadWeight::getNbinsSampling
const int & getNbinsSampling() const
Definition: CaloHadWeight.h:53
CaloHadWeight::m_MinLogEClus
float m_MinLogEClus
Definition: CaloHadWeight.h:81
CaloHadWeight::setHadData
void setHadData(const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell, const struct HadData &theData)
Definition: CaloHadWeight.cxx:67
CaloHadWeight
Definition: CaloHadWeight.h:19
CaloHadWeight::getHadData
const struct HadData * getHadData(const float &eta, const int &sampling, const float &logEClus, const float &logEDensCell) const
Definition: CaloHadWeight.cxx:55
CaloHadWeight::HadData::HadData
HadData()
Definition: CaloHadWeight.h:27
CaloHadWeight::getEtaSamplingBin
int getEtaSamplingBin(const float &eta, const int &sampling) const
Definition: CaloHadWeight.cxx:84
CaloHadWeight::getLogEClusMin
const float & getLogEClusMin() const
Definition: CaloHadWeight.h:58
CaloHadWeight::m_MaxEta
float m_MaxEta
Definition: CaloHadWeight.h:84
CaloHadWeight::m_MinLogEDensCell
float m_MinLogEDensCell
Definition: CaloHadWeight.h:82
CaloHadWeight::getEtaMin
const float & getEtaMin() const
Definition: CaloHadWeight.h:50
CaloHadWeight::getLogEDensCellMin
const float & getLogEDensCellMin() const
Definition: CaloHadWeight.h:62
CaloHadWeight::HadData::m_weight
float m_weight
Definition: CaloHadWeight.h:24
CaloHadWeight::m_MinSampling
int m_MinSampling
Definition: CaloHadWeight.h:80
CaloHadWeight::m_indexEtaSampling
std::vector< int > m_indexEtaSampling
Definition: CaloHadWeight.h:89
CaloHadWeight::m_MinEta
float m_MinEta
Definition: CaloHadWeight.h:79
CaloHadWeight::m_data
std::vector< struct HadData > m_data
Definition: CaloHadWeight.h:90
CaloHadWeight::getEtaMax
const float & getEtaMax() const
Definition: CaloHadWeight.h:51
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
CaloHadWeight::m_MaxLogEClus
float m_MaxLogEClus
Definition: CaloHadWeight.h:86
CaloHadWeight::getNbinsLogEClus
const int & getNbinsLogEClus() const
Definition: CaloHadWeight.h:57
CaloHadWeight::getLogEDensCellMax
const float & getLogEDensCellMax() const
Definition: CaloHadWeight.h:63
CaloHadWeight::m_nBinEta
int m_nBinEta
Definition: CaloHadWeight.h:74
CaloHadWeight::m_nBinLogEClus
int m_nBinLogEClus
Definition: CaloHadWeight.h:76
CaloHadWeight::getSamplingMin
const int & getSamplingMin() const
Definition: CaloHadWeight.h:54
CLASS_DEF.h
macros to associate a CLID to a type
CaloHadWeight::getSamplingMax
const int & getSamplingMax() const
Definition: CaloHadWeight.h:55
CaloHadWeight::m_nBinLogEDensCell
int m_nBinLogEDensCell
Definition: CaloHadWeight.h:77
CaloHadWeight::m_MaxSampling
int m_MaxSampling
Definition: CaloHadWeight.h:85