StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StGlobalElectron.h
1 #ifndef ST_GLOBAL_ELECTRON_H
2 #define ST_GLOBAL_ELECTRON_H
3 
4 #include "StThreeVectorF.hh"
5 #include "TObject.h"
6 //#include "Tracks.h"
7 
8 
9 class StGlobalElectron : public TObject
10 {
11 public:
12  StGlobalElectron() { /* no-op */ }
13  StGlobalElectron(const StGlobalElectron &other);
14  //StGlobalElectron(const Tracks &t);
15 
16  //get functions
17  Char_t charge() const { return Charge; }
18  Float_t getdEdx() const { return dEdx; }
19  Float_t getdEdxSigmaElectron() const { return dEdxSigmaElectron; }
20 
21  Float_t p() const { return PGlobal.mag(); }
22  Float_t eta() const { return PGlobal.pseudoRapidity(); }
23  Float_t phi() const { return PGlobal.phi(); }
24  Float_t pt() const { return PGlobal.perp(); }
25  StThreeVectorF pGlobal() const { return PGlobal; }
26  StThreeVectorF oGlobal() const { return OGlobal; }
27 
28 // Float_t pxGlobal() const { return PxGlobal; }
29  Float_t dcaGlobal() const { return DCAGlobal; }
30  Float_t chi2() const { return Chi2; }
31  UChar_t nHitsFit() const { return NHitsFit; }
32  UChar_t ndEdxPts() const { return NdEdxPts; }
33  UChar_t nMaxPts() const { return NMaxPts; }
34 
35  //set functions
36  void setAll(Float_t data[14]);
37  void setCharge(Char_t c) { Charge = c; }
38  void setdEdx(Float_t d) { dEdx = d; }
39  void setdEdxSigmaElectron(Float_t n) { dEdxSigmaElectron = n; }
40  void setPGlobal(StThreeVectorF p) { PGlobal = p; }
41  void setPGlobal(Float_t px, Float_t py, Float_t pz);
42  void setOGlobal(StThreeVectorF o) { OGlobal = o; }
43  void setOGlobal(Float_t ox, Float_t oy, Float_t oz);
44  void setDCAGlobal(Float_t d) { DCAGlobal = d; }
45  void setChi2(Float_t c) { Chi2 = c; }
46  void setNHitsFit(UChar_t n) { NHitsFit = n; }
47  void setNdEdxPts(UChar_t n) { NdEdxPts = n; }
48  void setNMaxPts(UChar_t n) { NMaxPts = n; }
49 
50 private:
51 
52  Char_t Charge;
53  Float_t dEdx;
54  Float_t dEdxSigmaElectron;
55 
56  StThreeVectorF PGlobal;
57  StThreeVectorF OGlobal;
58 /*
59  Float_t PxGlobal;
60  Float_t PyGlobal;
61  Float_t PzGlobal;
62  Float_t OxGlobal;
63  Float_t OyGlobal;
64  Float_t OzGlobal;
65 */
66  Float_t DCAGlobal;
67  Float_t Chi2;
68  UChar_t NHitsFit;
69  UChar_t NdEdxPts;
70  UChar_t NMaxPts;
71 
72  ClassDef(StGlobalElectron,2);
73 };
74 
75 #endif