All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
EfficiencyManager.h
Go to the documentation of this file.
1 #ifndef EfficiencyManager_h
2 #define EfficiencyManager_h
3 
4 #include <map>
5 #include <string>
6 
7 struct AsicKey ;
9 
10 /**
11 \addtogroup CaloDigi CaloDigi
12 @{
13 
14 */
15 
17 {
18  public :
20  virtual ~EfficiencyManager() ;
21 
22  virtual float getEfficiency(SimDigitalGeomCellId* cellID) = 0 ;
23 } ;
24 
26 {
27  public :
28  UniformEfficiency(float val = 1.0) ;
29  virtual ~UniformEfficiency() ;
30 
31 
32  virtual float getEfficiency(SimDigitalGeomCellId* cellID) ;
33 
34  protected :
35  float value ;
36 } ;
37 
39 {
40  public :
41  AsicEfficiency(std::string fileName , float globalVal = 1.0) ;
42  virtual ~AsicEfficiency() ;
43 
44  virtual float getEfficiency(SimDigitalGeomCellId* cellID) ;
45 
46  protected :
47  void readFile(std::string fileName) ;
48 
49  std::map<AsicKey,float> effMap ;
50 
51 } ;
52 
53 /** @} */
54 
55 #endif //EfficiencyManager_h
void readFile(std::string fileName)
virtual ~EfficiencyManager()
virtual float getEfficiency(SimDigitalGeomCellId *cellID)=0
virtual float getEfficiency(SimDigitalGeomCellId *cellID)
AsicEfficiency(std::string fileName, float globalVal=1.0)
UniformEfficiency(float val=1.0)
virtual float getEfficiency(SimDigitalGeomCellId *cellID)
virtual ~UniformEfficiency()
virtual ~AsicEfficiency()
std::map< AsicKey, float > effMap