ATLAS Offline Software
CaloEMFrac.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 // $Id: CaloEMFrac.h,v 1.2 2007-10-26 01:47:22 ssnyder Exp $
13 #ifndef CALOCONDITIONS_CALOEMFRAC_H
14 #define CALOCONDITIONS_CALOEMFRAC_H
15 
16 
17 #include "AthenaKernel/CLASS_DEF.h"
18 #include <vector>
19 
20 
35 class CaloEMFrac {
36 
37 public:
38 
42  struct EMFracData {
44  float m_fraction;
45 
48  float m_entries;
49 
52  float m_error;
53 
56  };
57 
58 
62  CaloEMFrac();
63 
64 
80  CaloEMFrac(int nBinEta,
81  float MinEta,
82  float MaxEta,
83  int nBinLogEClus,
84  float MinLogEClus,
85  float MaxLogEClus,
86  int nBinLogEDens,
87  float MinLogEDens,
88  float MaxLogEDens,
89  int nBinLogDepth,
90  float MinLogDepth,
91  float MaxLogDepth
92  );
93 
94 
96  int getNbinsEta() const {return m_nBinEta;}
98  float getEtaMin() const {return m_MinEta;}
100  float getEtaMax() const {return m_MaxEta;}
101 
103  int getNbinsLogEClus() const {return m_nBinLogEClus;}
105  float getLogEClusMin() const {return m_MinLogEClus;}
107  float getLogEClusMax() const {return m_MaxLogEClus;}
108 
110  int getNbinsLogEDens() const {return m_nBinLogEDens;}
112  float getLogEDensMin() const {return m_MinLogEDens;}
114  float getLogEDensMax() const {return m_MaxLogEDens;}
115 
117  int getNbinsLogDepth() const {return m_nBinLogDepth;}
119  float getLogDepthMin() const {return m_MinLogDepth;}
121  float getLogDepthMax() const {return m_MaxLogDepth;}
122 
123 
134  const struct EMFracData * getEMFracData(float eta,
135  float logEClus,
136  float logEDens,
137  float logDepth) const;
138 
139 
151  void setEMFracData(float eta,
152  float logEClus,
153  float logEDens,
154  float logDepth,
155  const struct EMFracData & theData);
156 
157 
158 private:
159 
161  int m_nBinEta;
168 
170  float m_MinEta;
177 
179  float m_MaxEta;
186 
190  std::vector<struct EMFracData> m_data;
191 
192 
199  int getEtaLogEClusBin(float eta, float logEClus) const;
200 
201 
210  int getBin(float eta, float logEClus, float logEDens, float logDepth) const;
211 
212 
213 };//end class
214 
215 
216 CLASS_DEF(CaloEMFrac,42479507,1)
217 
218 
219 #endif
CaloEMFrac::EMFracData::m_error
float m_error
Width of the distribution.
Definition: CaloEMFrac.h:52
CaloEMFrac::getEtaMin
float getEtaMin() const
Return the minimum eta for the first bin.
Definition: CaloEMFrac.h:98
CaloEMFrac::m_MinLogEClus
float m_MinLogEClus
Minimum log10(cluster energy) for the first bin.
Definition: CaloEMFrac.h:172
CaloEMFrac::getLogDepthMin
float getLogDepthMin() const
Return the minimum log10(cluster depth) for the first bin.
Definition: CaloEMFrac.h:119
CaloEMFrac::EMFracData::m_fraction
float m_fraction
The mean EM fraction in the bin.
Definition: CaloEMFrac.h:44
CaloEMFrac::getNbinsEta
int getNbinsEta() const
Return the number of bins in eta.
Definition: CaloEMFrac.h:96
CaloEMFrac::m_MaxLogEClus
float m_MaxLogEClus
Maximum log10(cluster energy) for the last bin.
Definition: CaloEMFrac.h:181
CaloEMFrac::m_nBinLogEClus
int m_nBinLogEClus
Number of log10(cluster energy) bins.
Definition: CaloEMFrac.h:163
CaloEMFrac::getLogEDensMin
float getLogEDensMin() const
Return the minimum log10(cluster energy density) for the first bin.
Definition: CaloEMFrac.h:112
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
CaloEMFrac::getLogEClusMin
float getLogEClusMin() const
Return the minimum log10(cluster energy) for the first bin.
Definition: CaloEMFrac.h:105
CaloEMFrac::EMFracData::m_entries
float m_entries
Number of entries populating the bin.
Definition: CaloEMFrac.h:48
CaloEMFrac::EMFracData
Per-bin data.
Definition: CaloEMFrac.h:42
CaloEMFrac::m_MaxLogEDens
float m_MaxLogEDens
Maximum log10(cluster energy density) for the last bin.
Definition: CaloEMFrac.h:183
CaloEMFrac::m_MinEta
float m_MinEta
Minimum eta for the first bin.
Definition: CaloEMFrac.h:170
CaloEMFrac::getEtaLogEClusBin
int getEtaLogEClusBin(float eta, float logEClus) const
Find the eta/logEClus bin number.
Definition: CaloEMFrac.cxx:140
CaloEMFrac
Hold binned EM fraction data.
Definition: CaloEMFrac.h:35
CaloEMFrac::m_nBinLogEDens
int m_nBinLogEDens
Number of log10(cluster energy density) bins.
Definition: CaloEMFrac.h:165
CaloEMFrac::getNbinsLogDepth
int getNbinsLogDepth() const
Return the number of bins in log10(cluster depth).
Definition: CaloEMFrac.h:117
CaloEMFrac::getLogDepthMax
float getLogDepthMax() const
Return the maximum log10(cluster depth) for the last bin.
Definition: CaloEMFrac.h:121
CaloEMFrac::m_MinLogEDens
float m_MinLogEDens
Minimum log10(cluster energy density) for the first bin.
Definition: CaloEMFrac.h:174
CaloEMFrac::getEMFracData
const struct EMFracData * getEMFracData(float eta, float logEClus, float logEDens, float logDepth) const
Return EM fraction data for one bin.
Definition: CaloEMFrac.cxx:90
CaloEMFrac::m_MaxEta
float m_MaxEta
Maximum eta for the last bin.
Definition: CaloEMFrac.h:179
CaloEMFrac::setEMFracData
void setEMFracData(float eta, float logEClus, float logEDens, float logDepth, const struct EMFracData &theData)
Set EM fraction data for one bin.
Definition: CaloEMFrac.cxx:115
CaloEMFrac::m_MaxLogDepth
float m_MaxLogDepth
Maximum log10(cluster depth) for the last bin.
Definition: CaloEMFrac.h:185
CaloEMFrac::getLogEClusMax
float getLogEClusMax() const
Return the maximum log10(cluster energy) for the last bin.
Definition: CaloEMFrac.h:107
CaloEMFrac::m_nBinLogDepth
int m_nBinLogDepth
Number of log10(cluster depth) bins.
Definition: CaloEMFrac.h:167
CaloEMFrac::CaloEMFrac
CaloEMFrac()
Default Constructor.
Definition: CaloEMFrac.cxx:18
CaloEMFrac::getBin
int getBin(float eta, float logEClus, float logEDens, float logDepth) const
Find a bin number.
Definition: CaloEMFrac.cxx:164
CaloEMFrac::m_nBinEta
int m_nBinEta
Number of eta bins.
Definition: CaloEMFrac.h:161
CaloEMFrac::getEtaMax
float getEtaMax() const
Return the maximum eta for the last bin.
Definition: CaloEMFrac.h:100
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
CaloEMFrac::EMFracData::EMFracData
EMFracData()
Constructor.
Definition: CaloEMFrac.h:55
CaloEMFrac::getNbinsLogEDens
int getNbinsLogEDens() const
Return the number of bins in log10(cluster energy density).
Definition: CaloEMFrac.h:110
CaloEMFrac::m_data
std::vector< struct EMFracData > m_data
The table.
Definition: CaloEMFrac.h:190
CaloEMFrac::getLogEDensMax
float getLogEDensMax() const
Return the maximum log10(cluster energy density) for the last bin.
Definition: CaloEMFrac.h:114
CLASS_DEF.h
macros to associate a CLID to a type
CaloEMFrac::m_MinLogDepth
float m_MinLogDepth
Minimum log10(cluster depth) for the first bin.
Definition: CaloEMFrac.h:176
CaloEMFrac::getNbinsLogEClus
int getNbinsLogEClus() const
Return the number of bins in log10(cluster energy).
Definition: CaloEMFrac.h:103