]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AOD/AliAODpidUtil.h
Update timestamp for new data points simulation
[u/mrichter/AliRoot.git] / STEER / AOD / AliAODpidUtil.h
index 451ed6c63bef552715fd2d4eb8eae480d026d462..db765c54cf3f65c9bfa56e6201eada7c52d9385d 100644 (file)
 //                    for the AOD class
 //   Origin: Rosa Romita, GSI, r.romita@gsi.de 
 //   Modified: Jens Wiechula, Uni Tuebingen, jens.wiechula@cern.ch
+//   Modified: Pietro Antonioli, INFN BO, pietro.antonioli@bo.infn.it
 //-------------------------------------------------------
 #include <Rtypes.h>
 #include <TMatrixD.h>
+#include <AliLog.h>
+#include "AliAODEvent.h" // Needed for inline functions
 #include "AliAODTrack.h" // Needed for inline functions
 #include "AliAODPid.h" // Needed for inline functions
+#include "AliTOFHeader.h" //Needed for inline functions
 //#include "HMPID/AliHMPID.h"
 
 #include "AliPIDResponse.h"
@@ -28,31 +32,19 @@ public:
   AliAODpidUtil(Bool_t isMC = kFALSE): AliPIDResponse(isMC) {;}
   virtual ~AliAODpidUtil() {;}
 
-  Int_t MakePID(const AliAODTrack *track,Double_t *p) const;
-  void MakeTPCPID(const AliAODTrack *track,Double_t *p) const;
-  void MakeITSPID(const AliAODTrack *track,Double_t *p) const;
-  void MakeTOFPID(const AliAODTrack *track,Double_t *p) const;
-  //  void MakeHMPIDPID(AliESDtrack *track);
-  void MakeTRDPID(const AliAODTrack *track,Double_t *p) const;
 
-  virtual Float_t NumberOfSigmasTOF(const AliVParticle *vtrack, AliPID::EParticleType type) const;
+  Float_t GetTPCsignalTunedOnData(const AliVTrack *t) const;
+  Float_t GetTOFsignalTunedOnData(const AliVTrack *t) const;
+
+protected:
+  virtual Float_t GetSignalDeltaTOFold(const AliVParticle *track, AliPID::EParticleType type, Bool_t ratio=kFALSE) const;
+  virtual Float_t GetNumberOfSigmasTOFold(const AliVParticle *vtrack, AliPID::EParticleType type) const;
   
 private:
   
   ClassDef(AliAODpidUtil,3)  // PID calculation class
 };
 
-inline Float_t AliAODpidUtil::NumberOfSigmasTOF(const AliVParticle *vtrack, AliPID::EParticleType type) const {
-  AliAODTrack *track=(AliAODTrack*)vtrack;
-  Double_t times[AliPID::kSPECIES];
-  Double_t sigmaTOFPid[AliPID::kSPECIES];
-  AliAODPid *pidObj = track->GetDetPid();
-  if (!pidObj) return -999.;
-  pidObj->GetIntegratedTimes(times);
-  pidObj->GetTOFpidResolution(sigmaTOFPid);
-  if (sigmaTOFPid[type]>0) return (pidObj->GetTOFsignal() - times[type])/sigmaTOFPid[type];
-  else return (pidObj->GetTOFsignal() - times[type])/fTOFResponse.GetExpectedSigma(track->P(),times[type],AliPID::ParticleMass(type));
-}
 
 #endif