23 #include "StThreeVectorD.hh"
24 #include "StContainers.h"
35 mDetId = other.mDetId;
36 memcpy( mCov, other.mCov,
sizeof( mCov ) );
42 set( detId, xyz, mom, c );
45 void set(
unsigned short detId,
52 memcpy( mCov, c,
sizeof(mCov) );
55 mDetId = other.mDetId;
58 memcpy( mCov, other.mCov,
sizeof(mCov) );
66 return sqrt( mCov[0] );
69 return sqrt( mCov[4] );
72 return sqrt( mCov[8] );
82 unsigned short trackId,
87 memcpy( mCov, cov,
sizeof( mCov ));
90 short detectorId()
const {
return mSector / 10; }
91 short sector()
const {
return mSector % 10; }
94 unsigned short mTrackId;
108 vector<StFwdTrackProjection> mProjections;
109 vector<StFwdTrackSeedPoint> mFTTPoints;
110 vector<StFwdTrackSeedPoint> mFSTPoints;
121 bool didFitConverge()
const;
122 bool didFitConvergeFully()
const;
123 short numberOfFailedPoints()
const;
132 short numberOfFitPoints()
const;
135 short numberOfSeedPoints()
const;
136 UShort_t idTruth()
const {
return mIdTruth; }
137 UShort_t qaTruth()
const {
return mQATruth; }
139 UChar_t vertexIndex()
const {
return mVtxIndex; }
140 bool isPrimary()
const {
return mVtxIndex != UCHAR_MAX; }
142 void setPrimaryMomentum(
StThreeVectorD mom ) { mPrimaryMomentum = mom; }
143 void setDidFitConverge(
bool lDidFitConverge ) { mDidFitConverge = lDidFitConverge; }
144 void setDidFitConvergeFully(
bool lDidFitConvergeFully ) { mDidFitConvergeFully = lDidFitConvergeFully;}
145 void setNumberOfFailedPoints(
short lNumberOfFailedPoints ) { mNumberOfFailedPoints = lNumberOfFailedPoints;}
146 void setNumberOfSeedPoints(
short lNumberOfSeedPoints ) { mNumberOfSeedPoints = lNumberOfSeedPoints;}
147 void setNumberOfFitPoints(
short lNumberOfFitPoints ) { mNumberOfFitPoints = lNumberOfFitPoints;}
148 void setChi2(
float lChi2 ) { mChi2 = lChi2;}
149 void setNDF(
float lNDF ) { mNDF = lNDF;}
150 void setPval(
float lPval ) { mPval = lPval;}
151 void setCharge(
short lCharge ) { mCharge = lCharge;}
152 void setMc( UShort_t idt, UShort_t qual ) { mIdTruth = idt; mQATruth = qual; }
153 void setDCA(
StThreeVectorD dca ) { mDCA[0] = dca.x(); mDCA[1] = dca.y(); mDCA[2] = dca.z(); }
154 void setDCA(
float dcaX,
float dcaY,
float dcaZ ) { mDCA[0] = dcaX; mDCA[1] = dcaY; mDCA[2] = dcaZ; }
155 void setVtxIndex( UChar_t vtxIndex ) { mVtxIndex = vtxIndex; }
158 StPtrVecFcsCluster& ecalClusters();
159 const StPtrVecFcsCluster& ecalClusters()
const;
161 void sortEcalClusterByET();
163 StPtrVecFcsCluster& hcalClusters();
164 const StPtrVecFcsCluster& hcalClusters()
const;
166 void sortHcalClusterByET();
170 bool mDidFitConverge;
171 bool mDidFitConvergeFully;
172 short mNumberOfFailedPoints;
173 short mNumberOfSeedPoints;
174 short mNumberOfFitPoints;
180 StPtrVecFcsCluster mEcalClusters;
181 StPtrVecFcsCluster mHcalClusters;