StFms  0.0.0
FMS software in the STAR framework
StMuFmsPoint.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // $Log$
11 #ifndef STROOT_STMUDSTMAKER_COMMON_STMUFMSPOINT_H_
12 #define STROOT_STMUDSTMAKER_COMMON_STMUFMSPOINT_H_
13 
14 #include <TLorentzVector.h>
15 #include <TObject.h>
16 #include <TRef.h>
17 #include <TVector3.h>
18 
19 class StFmsPoint; // The equivalent point structure in StEvent
20 class StMuFmsCluster;
21 
32 class StMuFmsPoint : public TObject {
33  public:
35  StMuFmsPoint(int detectorId = 0, float energy = 0.f,
36  float x = 0.f, float y = 0.f, float z = 0.f);
38  explicit StMuFmsPoint(const StFmsPoint&);
40  virtual ~StMuFmsPoint();
42  UShort_t detectorId() const { return mDetectorId; }
44  float energy() const { return mEnergy; }
46  float x() const { return mX; }
48  float y() const { return mY; }
50  float z() const { return mZ; }
52  TVector3 xyz() const { return TVector3(mX, mY, mZ); }
58  TVector3 momentum(float m = 0.f) const;
60  TLorentzVector fourMomentum(float m = 0.f) const;
64  const StMuFmsCluster* cluster() const;
66  void setDetectorId(UShort_t detector) { mDetectorId = detector; }
68  void setEnergy(float energy) { mEnergy = energy; }
70  void setX(float x) { mX = x; }
72  void setY(float y) { mY = y; }
74  void setZ(float z) { mZ = z; }
76  void set(const StFmsPoint&);
79 
80  protected:
81  UShort_t mDetectorId;
82  Float_t mEnergy;
83  Float_t mX;
84  Float_t mY;
85  Float_t mZ;
86  TRef mCluster;
87 
88  private:
94  StMuFmsPoint(const StMuFmsPoint&);
101  ClassDef(StMuFmsPoint, 1)
102 };
103 #endif // STROOT_STMUDSTMAKER_COMMON_STMUFMSPOINT_H_
void setY(float y)
Definition: StMuFmsPoint.h:72
void setX(float x)
Definition: StMuFmsPoint.h:70
void setCluster(StMuFmsCluster *cluster)
StMuFmsCluster * cluster()
StMuFmsPoint(int detectorId=0, float energy=0.f, float x=0.f, float y=0.f, float z=0.f)
void setEnergy(float energy)
Definition: StMuFmsPoint.h:68
TRef mCluster
Parent cluster of this photon.
Definition: StMuFmsPoint.h:86
float energy() const
Definition: StMuFmsPoint.h:44
Float_t mZ
z at front face of sub-detector
Definition: StMuFmsPoint.h:85
TVector3 momentum(float m=0.f) const
void setDetectorId(UShort_t detector)
Definition: StMuFmsPoint.h:66
TLorentzVector fourMomentum(float m=0.f) const
float x() const
Definition: StMuFmsPoint.h:46
UShort_t detectorId() const
Definition: StMuFmsPoint.h:42
void set(const StFmsPoint &)
StMuFmsPoint & operator=(const StMuFmsPoint &)
void setZ(float z)
Definition: StMuFmsPoint.h:74
float y() const
Definition: StMuFmsPoint.h:48
Float_t mY
Mean y ("center of gravity")
Definition: StMuFmsPoint.h:84
UShort_t mDetectorId
Detector ID as defined in database.
Definition: StMuFmsPoint.h:81
TVector3 xyz() const
Definition: StMuFmsPoint.h:52
virtual ~StMuFmsPoint()
Float_t mX
Mean x ("center of gravity")
Definition: StMuFmsPoint.h:83
float z() const
Definition: StMuFmsPoint.h:50
Float_t mEnergy
Total energy contained in the point.
Definition: StMuFmsPoint.h:82