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 public:
28  HFShowerParam(const std::string& name, const DDCompactView& cpv, edm::ParameterSet const& p);
29  virtual ~HFShowerParam();
30 
31 public:
32  struct Hit {
33  Hit() {}
34  G4ThreeVector position;
35  int depth;
36  double time;
37  double edep;
38  };
39 
40  void initRun(const HcalDDDSimConstants*);
41  std::vector<Hit> getHits(const G4Step* aStep, double weight, bool& isKilled);
42 
43 private:
44  std::vector<double> getDDDArray(const std::string&, const DDsvalues_type&);
45 
51  G4int emPDG, epPDG, gammaPDG;
52  std::vector<double> gpar;
53  bool fillHisto;
56  TH1F* em_long_sl;
57  TH2F *em_2d_1, *em_2d_2;
58 };
59 
60 #endif // HFShowerParam_h
HFShowerParam(const std::string &name, const DDCompactView &cpv, edm::ParameterSet const &p)
double attLMeanInv
Definition: HFShowerParam.h:49
bool parametrizeLast
Definition: HFShowerParam.h:50
virtual ~HFShowerParam()
void initRun(const HcalDDDSimConstants *)
std::vector< double > gpar
Definition: HFShowerParam.h:52
Definition: weight.py:1
HFShowerLibrary * showerLibrary
Definition: HFShowerParam.h:46
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:80
TH1F * em_lateral_2
Definition: HFShowerParam.h:54
HFFibre * fibre
Definition: HFShowerParam.h:47
std::vector< Hit > getHits(const G4Step *aStep, double weight, bool &isKilled)
HFGflash * gflash
Definition: HFShowerParam.h:48
std::vector< double > getDDDArray(const std::string &, const DDsvalues_type &)
G4ThreeVector position
Definition: HFShowerParam.h:34
double ref_index
Definition: HFShowerParam.h:49
TH1F * em_long_gflash
Definition: HFShowerParam.h:55
TH1F * em_long_sl
Definition: HFShowerParam.h:56
TH1F * em_long_1
Definition: HFShowerParam.h:54
TH1F * em_long_1_tuned
Definition: HFShowerParam.h:55
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
Definition: DDsvalues.h:12
TH1F * em_lateral_1
Definition: HFShowerParam.h:54
TH1F * em_long_2
Definition: HFShowerParam.h:54