Double_t expTime = fTOFResponse.GetExpectedSignal(vtrack,type);
return (tofTime - fTOFResponse.GetStartTime(vtrack->P()) - expTime)/fTOFResponse.GetExpectedSigma(vtrack->P(),expTime,AliPID::ParticleMassZ(type));
}
+
+//_________________________________________________________________________
+void AliESDpid::SetMassForTracking(AliESDtrack *esdtr) const
+{
+ // assign mass for tracking
+ //
+ int pid = AliPID::kPion; // this should be substituted by real most probable TPC pid (e,mu -> pion) or poin if no PID possible
+ //
+ if (pid<AliPID::kPion || pid>AliPID::kSPECIESC-1) pid = AliPID::kPion;
+ //
+ esdtr->SetMassForTracking( AliPID::ParticleCharge(pid)==1 ? AliPID::ParticleMass(pid) : -AliPID::ParticleMass(pid));
+ //
+}
+
+
+//_________________________________________________________________________
+void AliESDpid::MakePIDForTracking(AliESDEvent *event) const
+{
+ // assign masses using for tracking
+ Int_t nTrk=event->GetNumberOfTracks();
+ for (Int_t iTrk=nTrk; iTrk--;) {
+ AliESDtrack *track = event->GetTrack(iTrk);
+ SetMassForTracking(track);
+ }
+
+}