]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Updated PID information in D+ ntuple (Giacomo)
authorprino <prino@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 12 Apr 2012 23:03:33 +0000 (23:03 +0000)
committerprino <prino@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 12 Apr 2012 23:03:33 +0000 (23:03 +0000)
PWGHF/vertexingHF/AliAnalysisTaskSEDplus.cxx
PWGHF/vertexingHF/AliRDHFCutsDplustoKpipi.cxx
PWGHF/vertexingHF/AliRDHFCutsDplustoKpipi.h

index 5304ee3b373187fd443fe7d154cf355a19696367..1ca15f6d3227b7bce31c264838a6f05e8c790325 100644 (file)
@@ -958,7 +958,7 @@ void AliAnalysisTaskSEDplus::UserExec(Option_t */*option*/)
        tmp[2]=d->Py();
        tmp[3]=d->Pz();
        tmp[4]=d->Pt();
-       tmp[5]=fRDCutsAnalysis->GetIsSelectedPID();       
+       tmp[5]=fRDCutsAnalysis->GetPIDBitMask(d);         
        tmp[6]=d->PtProng(0);     
        tmp[7]=d->PtProng(1);     
        tmp[8]=d->PtProng(2);
index 0d988b7b3685c9c167bf48e24b8ba6238438a1b6..2bfde89a36518f4e18e239335e9ff15a31b3beed 100644 (file)
@@ -303,6 +303,35 @@ Bool_t AliRDHFCutsDplustoKpipi::IsInFiducialAcceptance(Double_t pt, Double_t y)
   return kTRUE;
 }
 
+//---------------------------------------------------------------------------
+Int_t AliRDHFCutsDplustoKpipi::GetPIDBitMask(AliAODRecoDecayHF *rd)
+{
+  //
+  // PID selection, returns 3 if accepted, 0 if not accepted
+  // 
+  if(!fUsePID || !rd) return 3;
+  //if(fUsePID)printf("i am inside the pid \n");
+  Int_t mask=0;
+  Int_t sign=rd->GetCharge(); 
+  for(Int_t daught=0;daught<3;daught++){
+    AliAODTrack *track=(AliAODTrack*)rd->GetDaughter(daught);
+
+    if(sign==track->Charge()){//pions
+      Int_t isPion=fPidHF->MakeRawPid(track,AliPID::kPion);
+      if(isPion==0)mask+=1;
+      else if(isPion>0)mask+=3;
+      mask=mask<<2;
+    }
+    else{//kaons
+      Int_t isKaon=fPidHF->MakeRawPid(track,AliPID::kKaon);
+      if(isKaon==0)mask+=1;
+      else if(isKaon>0)mask+=3;
+      mask=mask<<2;
+    }
+  }
+  mask=mask>>2;
+  return mask;   
+}
 //---------------------------------------------------------------------------
 Int_t AliRDHFCutsDplustoKpipi::IsSelectedPID(AliAODRecoDecayHF *rd)
 {
index e1e14f8ad4666065c575beb85bb9a8c1c80be2ca..ec4ef9e5341c42fb2566bb87c1bb780fc7cbb488 100644 (file)
@@ -46,6 +46,7 @@ class AliRDHFCutsDplustoKpipi : public AliRDHFCuts
   virtual void SetStandardCutsPbPb2010();
   virtual void SetStandardCutsPbPb2011();
 
+  Int_t GetPIDBitMask(AliAODRecoDecayHF *rd);
   Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
   Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);}
   void SetUseStrongPid(Int_t spid){fUseStrongPid=spid;}