00001
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047 #ifndef StEmcPoint_hh
00048 #define StEmcPoint_hh
00049
00050 #include "StHit.h"
00051 #include "StEnumerations.h"
00052
00053 class StEmcPoint : public StHit {
00054 public:
00055 StEmcPoint();
00056 StEmcPoint(const StThreeVectorF&,
00057 const StThreeVectorF&,
00058 const StThreeVectorF&,
00059 unsigned int, float,
00060 float, float,
00061 unsigned char = 0);
00062 ~StEmcPoint();
00063
00064 float energy() const;
00065 float chiSquare() const;
00066 void setEnergy(const float);
00067 void setChiSquare(const float);
00068 StThreeVectorF size() const;
00069 void setSize(const StThreeVectorF&);
00070
00071 float energyInDetector(const StDetectorId) const;
00072 float sizeAtDetector(const StDetectorId) const;
00073 void setEnergyInDetector(const StDetectorId, const float);
00074 void setSizeAtDetector(const StDetectorId, const float);
00075
00076 float deltaEta() const;
00077 float deltaPhi() const;
00078 float deltaU() const;
00079 float deltaV() const;
00080 void setDeltaEta(const float);
00081 void setDeltaPhi(const float);
00082 void setDeltaU(const float);
00083 void setDeltaV(const float);
00084
00085 StPtrVecEmcCluster& cluster(const StDetectorId);
00086 const StPtrVecEmcCluster& cluster(const StDetectorId) const;
00087
00088 void addCluster(const StDetectorId, const StEmcCluster*);
00089
00090 StPtrVecEmcPoint& neighbor();
00091 const StPtrVecEmcPoint& neighbor() const;
00092
00093 void addNeighbor(const StEmcPoint*);
00094
00095 int nTracks() const;
00096 StPtrVecTrack& track();
00097 const StPtrVecTrack& track() const;
00098
00099 void addTrack(StTrack*);
00100
00101
00102 void print();
00103
00104 void setQuality(int qua) {myQuality = qua ;}
00105 int quality() const {return myQuality;}
00106
00107 protected:
00108 Float_t mEnergy;
00109 Float_t mChiSquare;
00110 StThreeVectorF mSize;
00111 Float_t mEnergyInDetector[4];
00112 Float_t mSizeAtDetector[4];
00113 Float_t mDelta[2];
00114 StPtrVecEmcCluster mCluster[4];
00115 StPtrVecEmcPoint mNeighbors;
00116 StPtrVecTrack mTracks;
00117 int myQuality;
00118 int getDetId(const StDetectorId) const;
00119 ClassDef(StEmcPoint,2)
00120 };
00121 #endif
00122
00123