CMS 3D CMS Logo

HcalQie.h
Go to the documentation of this file.
1 #ifndef SimG4CMS_Calo_HcalQie_H
2 #define SimG4CMS_Calo_HcalQie_H
3 // File: HcalQie.h
5 // Qie simulation for HCal hits
7 
11 
12 #include <vector>
13 
14 namespace CLHEP {
15  class HepRandomEngine;
16 }
17 
18 class HcalQie {
19 public:
20  HcalQie(edm::ParameterSet const& p);
21  virtual ~HcalQie();
22 
23  std::vector<int> getCode(int, const std::vector<CaloHit>&, CLHEP::HepRandomEngine*);
24  double getEnergy(const std::vector<int>&);
25 
26 private:
27  std::vector<double> shape();
28  std::vector<int> code();
29  std::vector<double> charge();
30  std::vector<double> weight(int binofmax, int mode, int npre, int numbucket);
31  double codeToQ(int ic);
32  int getCode(double charge);
33  double getShape(double time);
34 
35 private:
36  std::vector<double> shape_;
37  std::vector<int> code_;
38  std::vector<double> charge_;
39  int binOfMax, signalBuckets, preSamples, numOfBuckets;
40  std::vector<double> weight_;
41  double sigma, qToPE, eDepPerPE, baseline;
42  int bmin_, bmax_;
43  double phase_, rescale_;
44 };
45 
46 #endif
double getEnergy(HBHERecHitCollection::const_iterator hit, int useRaw=0, bool debug=false)
int signalBuckets
Definition: HcalQie.h:39
std::vector< double > weight_
Definition: HcalQie.h:40
int bmin_
Definition: HcalQie.h:42
double rescale_
Definition: HcalQie.h:43
std::vector< double > charge_
Definition: HcalQie.h:38
std::vector< int > code_
Definition: HcalQie.h:37
std::vector< double > shape_
Definition: HcalQie.h:36
TEveGeoShape * getShape(const char *name, TGeoBBox *shape, Color_t color)
Definition: BuilderUtils.cc:43
double sigma
Definition: HcalQie.h:41