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 
20 public:
21 
22  HcalQie(edm::ParameterSet const & p);
23  virtual ~HcalQie();
24 
25  std::vector<int> getCode(int, const std::vector<CaloHit>&, CLHEP::HepRandomEngine*);
26  double getEnergy(const std::vector<int>&);
27 
28 private:
29 
30  std::vector<double> shape();
31  std::vector<int> code();
32  std::vector<double> charge();
33  std::vector<double> weight(int binofmax, int mode, int npre, int numbucket);
34  double codeToQ(int ic);
35  int getCode(double charge);
36  double getShape(double time);
37 
38 private:
39 
40  std::vector<double> shape_;
41  std::vector<int> code_;
42  std::vector<double> charge_;
43  int binOfMax, signalBuckets, preSamples, numOfBuckets;
44  std::vector<double> weight_;
45  double sigma, qToPE, eDepPerPE, baseline;
46  int bmin_, bmax_;
47  double phase_, rescale_;
48 
49 };
50 
51 #endif
int signalBuckets
Definition: HcalQie.h:43
double getEnergy(HBHERecHitCollection::const_iterator hit, bool useRaw=false, bool debug=false)
std::vector< double > weight_
Definition: HcalQie.h:44
int bmin_
Definition: HcalQie.h:46
double rescale_
Definition: HcalQie.h:47
std::vector< double > charge_
Definition: HcalQie.h:42
std::vector< int > code_
Definition: HcalQie.h:41
std::vector< double > shape_
Definition: HcalQie.h:40
TEveGeoShape * getShape(const char *name, TGeoBBox *shape, Color_t color)
Definition: BuilderUtils.cc:42
double sigma
Definition: HcalQie.h:45