2 #ifndef myTrTrackPlus_h
3 #define myTrTrackPlus_h
9 #define DOHOWEVERALLFITS
13 #endif //#ifdef _WITHGBATCH_
42 static int ComputeIndex(
int algo=0,
int pattern=0,
int refit=0);
43 virtual int iTrTrackPar(
int algo=0,
int pattern=0,
int refit=0);
46 virtual Double32_t
GetChisq(
int ittp=0);
144 virtual void Clear(Option_t* option=
"");
157 myTrTrackPlusFiller();
159 ~myTrTrackPlusFiller();
163 virtual void Fill(TrTrackR* _track,
short int ipart, EcalShowerR* shower, Double_t beta=999,
bool kMC=
false,
bool heavy=
true);
164 virtual void FillCharge(TrTrackR* _track, Double_t beta);
165 virtual void FillMoreHeavy(TrTrackR* _track);
167 virtual void Fits(Double_t beta=999,
bool kMC=
false,
bool heavy=
true);
169 virtual int AddResults(
int algo=0,
int pattern=0,
int refit=0,
float mass=TrTrackR::DefaultMass,
float chrg=TrTrackR::DefaultCharge,
float beta=999,
float fixrig=0.);
170 inline virtual void AddResults(
fitresult& fr,
int algo=0,
int pattern=0,
int refit=0);
173 virtual void Clear(Option_t* option=
"");
181 Double_t getRigidity(TrTrackR* track,
int par,
bool rigcorr=
false);
182 Double_t getChisq(TrTrackR* track,
int par);
183 Double_t getNormChisqX(TrTrackR* track,
int par);
184 Double_t getNormChisqY(TrTrackR* track,
int par);
185 Double_t getLogExtChisq(TrTrackR *trk,
int k89,
int k8,
int k9);
187 Double_t HitCloseTrack(
int layer,
int side,
const char* type, AMSEventR* fEvent, TrTrackR* track,
bool kMC=
false,
int TrackId=0);
188 void BuildHitCloseTrack(AMSEventR* fEvent, Double_t** distHM, Double_t** distNH, TrTrackR* track,
int TrackId, std::vector<TrClusterR*> TrClusUsed,
bool kMC);
189 void BuildVectorUsedClusters(AMSEventR* fEvent, std::vector<TrClusterR*>& TrClusUsed);
191 void GetMinDistanceNoiseHits(TrTrackR *track,
myPoint mindistance[]);
193 void BuildResiduals(
bool kMC, Double_t** res, TrTrackR* track,
int TrackId);
194 Double_t LocalResidual(
int layer,
int side,
bool kMC, AMSEventR* fEvent, TrTrackR* track,
int TrackId=0);
196 void PathOnB(TrTrackR* tr,
int kDef, MagField* magfield, Double_t& B, Double_t& SenThetaX, Double_t& SenThetaY, Double_t& L, Double_t& pMDR, Double_t& pMDR_known, Double_t step=0.1,
bool modulus=
false);
198 #endif //#ifdef _WITHGBATCH_