HYDRA_development_version
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
hmdctrk.h
Go to the documentation of this file.
1 #ifndef HMDCTRK_H
2 #define HMDCTRK_H
3 
4 #include "TObject.h"
5 #include "hsymmat.h"
6 
7 class HMdcSeg;
8 
9 class HMdcTrk : public TObject {
10 protected:
11  Float_t z;
12  Float_t r;
13  Float_t p;
14  Float_t theta;
15  Float_t phi;
16  Int_t charge;
17  Float_t chi2;
19  Int_t flag;
20  Int_t sector;
21  Int_t segIndex[2];
22 public:
23  inline HMdcTrk(void);
24  ~HMdcTrk(void) {}
25  void setZ(Float_t az,Float_t err) { z=az; cov.setErr(0,err); }
26  void setR(Float_t ar,Float_t err) { r=ar; cov.setErr(1,err); }
27  void setP(Float_t ap,Float_t err) { p=ap; cov.setErr(2,err); }
28  void setTheta(Float_t atheta,Float_t err) {theta=atheta; cov.setErr(3,err); }
29  void setPhi(Float_t aphi,Float_t err) { phi=aphi; cov.setErr(4,err); }
30  void setCharge(Int_t c) { charge=c; }
31  void setChi2(Float_t chi) { chi2=chi; }
32  void setFlag(Int_t aFlag) { flag=aFlag; }
33  void setSector(Int_t aSector) { sector=aSector; }
34  void setSegmentIndex(Int_t index,Int_t segment) { segIndex[segment]=index; }
35  void readFromSegment(HMdcSeg *seg);
36  Float_t getZ(void) { return z; }
37  Float_t getErrZ(void) { return cov.getErr(0); }
38  Float_t getR(void) { return r; }
39  Float_t getErrR(void) { return cov.getErr(1); }
40  Float_t getP(void) { return p; }
41  Float_t getErrP(void) { return cov.getErr(2); }
42  Float_t getTheta(void) { return theta; }
43  Float_t getErrTheta(void) { return cov.getErr(3); }
44  Float_t getPhi(void) { return phi; }
45  Float_t getErrPhi(void) { return cov.getErr(4); }
46  Int_t getCharge(void) { return charge; }
47  Float_t getChi2(void) { return chi2; }
48  Int_t getSector(void) { return sector; }
49  Int_t getSegmentIndex(Int_t segment) { return segIndex[segment]; }
50  ClassDef(HMdcTrk,1)
51 };
52 
53 ////////////// Inline functions
54 inline HMdcTrk::HMdcTrk(void) {
55  z=r=p=theta=phi=chi2=0.;
56  flag=sector=charge=0;
57  segIndex[0]=segIndex[1]=0;
58 }
59 
60 #endif
Int_t getSector(void)
Definition: hmdctrk.h:48
Float_t getErrR(void)
Definition: hmdctrk.h:39
void readFromSegment(HMdcSeg *seg)
Definition: hmdctrk.cc:13
Float_t getErrP(void)
Definition: hmdctrk.h:41
void setChi2(Float_t chi)
Definition: hmdctrk.h:31
Float_t p
Definition: hmdctrk.h:13
~HMdcTrk(void)
Definition: hmdctrk.h:24
Definition: hmdctrk.h:9
void setSegmentIndex(Int_t index, Int_t segment)
Definition: hmdctrk.h:34
Float_t getZ(void)
Definition: hmdctrk.h:36
void setErr(const Int_t, const Float_t)
Definition: hsymmat.cc:99
void setSector(Int_t aSector)
Definition: hmdctrk.h:33
Float_t theta
Definition: hmdctrk.h:14
Int_t flag
Definition: hmdctrk.h:19
Float_t getPhi(void)
Definition: hmdctrk.h:44
Float_t getErrPhi(void)
Definition: hmdctrk.h:45
void setPhi(Float_t aphi, Float_t err)
Definition: hmdctrk.h:29
Int_t charge
Definition: hmdctrk.h:16
Float_t getTheta(void)
Definition: hmdctrk.h:42
Int_t getCharge(void)
Definition: hmdctrk.h:46
HSymMat5 cov
Definition: hmdctrk.h:18
Float_t getErrTheta(void)
Definition: hmdctrk.h:43
Float_t getErrZ(void)
Definition: hmdctrk.h:37
Int_t sector
Definition: hmdctrk.h:20
Float_t phi
Definition: hmdctrk.h:15
Float_t r
Definition: hmdctrk.h:12
void setTheta(Float_t atheta, Float_t err)
Definition: hmdctrk.h:28
Float_t getP(void)
Definition: hmdctrk.h:40
Float_t getR(void)
Definition: hmdctrk.h:38
Int_t segIndex[2]
Definition: hmdctrk.h:21
void setFlag(Int_t aFlag)
Definition: hmdctrk.h:32
Float_t chi2
Definition: hmdctrk.h:17
Float_t z
Definition: hmdctrk.h:11
Float_t getErr(const Int_t)
Definition: hsymmat.cc:141
void setP(Float_t ap, Float_t err)
Definition: hmdctrk.h:27
HMdcTrk(void)
Definition: hmdctrk.h:54
Float_t getChi2(void)
Definition: hmdctrk.h:47
void setZ(Float_t az, Float_t err)
Definition: hmdctrk.h:25
void setCharge(Int_t c)
Definition: hmdctrk.h:30
Int_t getSegmentIndex(Int_t segment)
Definition: hmdctrk.h:49
void setR(Float_t ar, Float_t err)
Definition: hmdctrk.h:26