CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalSiPM.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 #ifndef HcalSimAlgos_HcalSiPM_h
3 #define HcalSimAlgos_HcalSiPM_h
4 
13 #include <vector>
14 
15 #include "CLHEP/Random/RandGaussQ.h"
16 
17 class HcalSiPM {
18  public:
19  HcalSiPM(int nCells = 1);
20 
21  virtual ~HcalSiPM();
22 
23  virtual int hitCells(int photons, int integral = 0) const;
24 
25  int getNCells() const { return theCellCount; }
26  void setNCells(int nCells);
27  void initRandomEngine(CLHEP::HepRandomEngine& engine);
28 
29  protected:
30  virtual double errOnX(double x, double prehit = 0.) const;
31  void getBeforeAndAfter(double val, int& before, int& after,
32  const std::vector<double>& vec) const;
33 
35  mutable CLHEP::RandGaussQ *theRndGauss;
36 
37  std::vector< double > theXSamples;
38  std::vector< double > thePrehitSamples;
39  std::vector< std::vector< double > > theErrSamples;
40 
41  void defaultErrInit();
42 
43 };
44 
45 #endif //HcalSimAlgos_HcalSiPM_h
A general implementation for the response of a SiPM.
Definition: HcalSiPM.h:17
virtual ~HcalSiPM()
Definition: HcalSiPM.cc:17
int theCellCount
Definition: HcalSiPM.h:34
void defaultErrInit()
Definition: HcalSiPM.cc:108
CLHEP::RandGaussQ * theRndGauss
Definition: HcalSiPM.h:35
virtual double errOnX(double x, double prehit=0.) const
Definition: HcalSiPM.cc:75
std::vector< double > theXSamples
Definition: HcalSiPM.h:37
std::vector< double > thePrehitSamples
Definition: HcalSiPM.h:38
int getNCells() const
Definition: HcalSiPM.h:25
void setNCells(int nCells)
Definition: HcalSiPM.cc:65
void getBeforeAndAfter(double val, int &before, int &after, const std::vector< double > &vec) const
Definition: HcalSiPM.cc:93
void initRandomEngine(CLHEP::HepRandomEngine &engine)
Definition: HcalSiPM.cc:70
Integral< F, X >::type integral(const F &f)
Definition: Integral.h:69
HcalSiPM(int nCells=1)
Definition: HcalSiPM.cc:9
std::vector< std::vector< double > > theErrSamples
Definition: HcalSiPM.h:39
virtual int hitCells(int photons, int integral=0) const
Definition: HcalSiPM.cc:21
Definition: DDAxes.h:10