CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 
14 
15 #include "G4ParticleTable.hh"
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(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(G4ParticleTable *);
45  std::vector<Hit> getHits(G4Step * aStep);
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  TH2F *em_2d_1, *em_2d_2;
62 };
63 
64 
65 #endif // HFShowerParam_h
double attLMeanInv
Definition: HFShowerParam.h:54
bool parametrizeLast
Definition: HFShowerParam.h:55
std::vector< Hit > getHits(G4Step *aStep)
virtual ~HFShowerParam()
std::vector< double > gpar
Definition: HFShowerParam.h:57
HFShowerLibrary * showerLibrary
Definition: HFShowerParam.h:51
HFShowerParam(std::string &name, const DDCompactView &cpv, edm::ParameterSet const &p)
type of data representation of DDCompactView
Definition: DDCompactView.h:77
TH1F * em_lateral_2
Definition: HFShowerParam.h:59
HFFibre * fibre
Definition: HFShowerParam.h:52
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
std::maps an index to a DDValue. The index corresponds to the index assigned to the name of the std::...
Definition: DDsvalues.h:19
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_sl
Definition: HFShowerParam.h:60
TH1F * em_long_gflash
Definition: HFShowerParam.h:60
TH1F * em_long_1
Definition: HFShowerParam.h:59
void initRun(G4ParticleTable *)
TH1F * em_long_1_tuned
Definition: HFShowerParam.h:60
TH1F * em_lateral_1
Definition: HFShowerParam.h:59
TH1F * em_long_2
Definition: HFShowerParam.h:59