CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PHcalTB06Info.h
Go to the documentation of this file.
1 #ifndef HcalTestBeam_PHcalTB06Info_h
2 #define HcalTestBeam_PHcalTB06Info_h
3 // -*- C++ -*-
4 //
5 // Package: HcalTestBeam
6 // Class : PHcalTB06Info
7 //
17 //
18 // Original Author: Sunanda Banerjee
19 // Created: Tue Oct 10 10:14:34 CEST 2006
20 //
21 
22 // system include files
23 #include <string>
24 #include <vector>
25 #include <memory>
26 #include <cmath>
27 
28 // user include files
29 
31 
32 public:
33  PHcalTB06Info();
34  virtual ~PHcalTB06Info();
35 
36  struct Vtx {
37  Vtx(): trackID(0), partID(0), px(0), py(0), pz(0), eKin(0) {}
38  int trackID;
39  int partID;
40  float px;
41  float py;
42  float pz;
43  float eKin;
44  };
45 
46  struct Hit {
47  Hit(): id(0), eta(0), phi(0), e(0), t(0) {}
48  unsigned int id;
49  float eta;
50  float phi;
51  float e;
52  float t;
53  };
54 
55  typedef std::vector<float> FloatVector;
56  typedef std::vector<int> IntVector;
57  typedef std::vector<Vtx> VtxVector;
58  typedef std::vector<Hit> HitVector;
59 
60  // ---------- const member functions ---------------------
61  int primary() const {return nPrimary;}
62  int partID() const {return idBeam;}
63  float initE() const {return eBeam;}
64  float eta() const {return etaBeam;}
65  float phi() const {return phiBeam;}
66  float simEtotal() const {return simEtot;}
67  float simEcE() const {return simEEc;}
68  float simHcE() const {return simEHc;}
69 
70  HitVector simHits() const {return hits;}
71  Hit simHit(unsigned int i) const {return hits[i];}
72  unsigned int simHitID(unsigned int i) const {return hits[i].id;}
73  float simHitEta(unsigned int i) const {return hits[i].eta;}
74  float simHitPhi(unsigned int i) const {return hits[i].phi;}
75  float simHitE(unsigned int i) const {return hits[i].e;}
76  float simHitT(unsigned int i) const {return hits[i].t;}
77 
78  int evNum() const {return v1EvNum;}
79  int vtxType() const {return v1Type;}
80  float vtxPrimX() const {return v1X;}
81  float vtxPrimY() const {return v1Y;}
82  float vtxPrimZ() const {return v1Z;}
83  float vtxPrimR() const {return v1R;}
84  float vtxPrimU() const {return v1U;}
85  float vtxPrimV() const {return v1V;}
86  float vtxPrimW() const {return v1W;}
87  float vtxPrimPx() const {return v1Px;}
88  float vtxPrimPy() const {return v1Py;}
89  float vtxPrimPz() const {return v1Pz;}
90  int vtxSec() const {return v1Nsec;}
91  VtxVector vtxSecondaries() const {return v1Sec;}
92  Vtx vtxSecondary(unsigned int i) const {return v1Sec[i];}
93  int vtxTrackID(unsigned int i) const {return v1Sec[i].trackID;}
94  int vtxPartID(unsigned int i) const {return v1Sec[i].partID;}
95  float vtxSecPx(unsigned int i) const {return v1Sec[i].px;}
96  float vtxSecPy(unsigned int i) const {return v1Sec[i].py;}
97  float vtxSecPz(unsigned int i) const {return v1Sec[i].pz;}
98  float vtxSecEKin(unsigned int i) const {return v1Sec[i].eKin;}
99 
100  // ---------- static member functions --------------------
101 
102  // ---------- member functions ---------------------------
103  void clear();
104  void setPrimary(int primary, int id, double energy, double eta, double phi);
105  void setEdep(double simtot, double sime, double simh);
106  void saveHit(unsigned int det, double eta, double phi, double e, double t);
107 
108  //Vertex associated methods
109  void setVtxPrim(int evNum, int type, double x, double y, double z, double u,
110  double v, double w, double px, double py, double pz);
111  void setVtxSec(int id, int pdg, double px, double py, double pz, double ek);
112 
113 private:
114  // PHcalTB06Info(const PHcalTB06Info&);
115  // const PHcalTB06Info& operator=(const PHcalTB06Info&);
116 
117  // ---------- member data --------------------------------
118 
119  //Beam parameters
122 
123  //Deposited energies
126 
127  //Hit Members
128  int hit;
130 
131  //Vertex members
133  float v1X, v1Y, v1Z, v1R, v1U, v1V, v1W;
134  float v1Px, v1Py, v1Pz;
136 };
137 
138 
139 #endif
float vtxPrimX() const
Definition: PHcalTB06Info.h:80
type
Definition: HCALResponse.h:21
std::vector< int > IntVector
Definition: PHcalTB06Info.h:56
int i
Definition: DBlmapReader.cc:9
float vtxPrimY() const
Definition: PHcalTB06Info.h:81
unsigned int simHitID(unsigned int i) const
Definition: PHcalTB06Info.h:72
HitVector simHits() const
Definition: PHcalTB06Info.h:70
const double w
Definition: UKUtility.cc:23
int vtxPartID(unsigned int i) const
Definition: PHcalTB06Info.h:94
float vtxPrimV() const
Definition: PHcalTB06Info.h:85
float phi() const
Definition: PHcalTB06Info.h:65
void setEdep(double simtot, double sime, double simh)
float vtxPrimPz() const
Definition: PHcalTB06Info.h:89
unsigned int id
Definition: PHcalTB06Info.h:48
float simEcE() const
Definition: PHcalTB06Info.h:67
int vtxType() const
Definition: PHcalTB06Info.h:79
std::vector< float > FloatVector
Definition: PHcalTB06Info.h:55
float vtxPrimPx() const
Definition: PHcalTB06Info.h:87
float simHitT(unsigned int i) const
Definition: PHcalTB06Info.h:76
float vtxPrimPy() const
Definition: PHcalTB06Info.h:88
Vtx vtxSecondary(unsigned int i) const
Definition: PHcalTB06Info.h:92
float vtxPrimZ() const
Definition: PHcalTB06Info.h:82
void setVtxPrim(int evNum, int type, double x, double y, double z, double u, double v, double w, double px, double py, double pz)
float vtxSecPz(unsigned int i) const
Definition: PHcalTB06Info.h:97
float vtxPrimU() const
Definition: PHcalTB06Info.h:84
int vtxTrackID(unsigned int i) const
Definition: PHcalTB06Info.h:93
virtual ~PHcalTB06Info()
std::vector< Vtx > VtxVector
Definition: PHcalTB06Info.h:57
std::vector< Hit > HitVector
Definition: PHcalTB06Info.h:58
int partID() const
Definition: PHcalTB06Info.h:62
float vtxPrimR() const
Definition: PHcalTB06Info.h:83
VtxVector v1Sec
float vtxSecPx(unsigned int i) const
Definition: PHcalTB06Info.h:95
void setVtxSec(int id, int pdg, double px, double py, double pz, double ek)
void saveHit(unsigned int det, double eta, double phi, double e, double t)
VtxVector vtxSecondaries() const
Definition: PHcalTB06Info.h:91
float simHitE(unsigned int i) const
Definition: PHcalTB06Info.h:75
Hit simHit(unsigned int i) const
Definition: PHcalTB06Info.h:71
HitVector hits
float vtxSecEKin(unsigned int i) const
Definition: PHcalTB06Info.h:98
void setPrimary(int primary, int id, double energy, double eta, double phi)
float initE() const
Definition: PHcalTB06Info.h:63
float simEtotal() const
Definition: PHcalTB06Info.h:66
int vtxSec() const
Definition: PHcalTB06Info.h:90
float simHitEta(unsigned int i) const
Definition: PHcalTB06Info.h:73
float simHitPhi(unsigned int i) const
Definition: PHcalTB06Info.h:74
int primary() const
Definition: PHcalTB06Info.h:61
float vtxPrimW() const
Definition: PHcalTB06Info.h:86
float simHcE() const
Definition: PHcalTB06Info.h:68
float eta() const
Definition: PHcalTB06Info.h:64
float vtxSecPy(unsigned int i) const
Definition: PHcalTB06Info.h:96
int evNum() const
Definition: PHcalTB06Info.h:78