CMS 3D CMS Logo

HFShowerParam.h
Go to the documentation of this file.
1 #ifndef SimG4CMS_HFShowerParam_h
2 #define SimG4CMS_HFShowerParam_h
3 // File: HFShowerParam.h
5 // Description: Generates hits for HF with some parametrized information
7 
15 
16 #include "G4ThreeVector.hh"
17 
18 class DDCompactView;
19 class G4Step;
20 
21 #include <TH1F.h>
22 #include <TH2F.h>
23 #include <string>
24 #include <vector>
25 
27 
28 public:
29 
30  HFShowerParam(const std::string & name, const DDCompactView & cpv,
31  edm::ParameterSet const & p);
32  virtual ~HFShowerParam();
33 
34 public:
35 
36  struct Hit {
37  Hit() {}
38  G4ThreeVector position;
39  int depth;
40  double time;
41  double edep;
42  };
43 
44  void initRun(const HcalDDDSimConstants*);
45  std::vector<Hit> getHits(const G4Step * aStep, double weight, bool& isKilled);
46 
47 private:
48 
49  std::vector<double> getDDDArray(const std::string&, const DDsvalues_type&);
50 
56  G4int emPDG, epPDG, gammaPDG;
57  std::vector<double> gpar;
58  bool fillHisto;
61  TH1F *em_long_sl;
62  TH2F *em_2d_1, *em_2d_2;
63 };
64 
65 
66 #endif // HFShowerParam_h
HFShowerParam(const std::string &name, const DDCompactView &cpv, edm::ParameterSet const &p)
double attLMeanInv
Definition: HFShowerParam.h:54
bool parametrizeLast
Definition: HFShowerParam.h:55
virtual ~HFShowerParam()
void initRun(const HcalDDDSimConstants *)
std::vector< double > gpar
Definition: HFShowerParam.h:57
Definition: weight.py:1
HFShowerLibrary * showerLibrary
Definition: HFShowerParam.h:51
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:80
TH1F * em_lateral_2
Definition: HFShowerParam.h:59
HFFibre * fibre
Definition: HFShowerParam.h:52
std::vector< Hit > getHits(const G4Step *aStep, double weight, bool &isKilled)
HFGflash * gflash
Definition: HFShowerParam.h:53
std::vector< double > getDDDArray(const std::string &, const DDsvalues_type &)
G4ThreeVector position
Definition: HFShowerParam.h:38
double ref_index
Definition: HFShowerParam.h:54
TH1F * em_long_gflash
Definition: HFShowerParam.h:60
TH1F * em_long_sl
Definition: HFShowerParam.h:61
TH1F * em_long_1
Definition: HFShowerParam.h:59
TH1F * em_long_1_tuned
Definition: HFShowerParam.h:60
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
Definition: DDsvalues.h:12
TH1F * em_lateral_1
Definition: HFShowerParam.h:59
TH1F * em_long_2
Definition: HFShowerParam.h:59