]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGDQ/dielectron/AliDielectronTrackCuts.cxx
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGDQ / dielectron / AliDielectronTrackCuts.cxx
index 30ed6d764a2f0c397beae5d5d873b0db21ade8fe..64d61e7e2ec215b82bca81d2a1ba16a83aebbb37 100644 (file)
@@ -43,6 +43,7 @@ AliDielectronTrackCuts::AliDielectronTrackCuts() :
   fRequireITSRefit(kFALSE),
   fRequireTPCRefit(kFALSE),
   fTPCNclRobustCut(-1),
+  fTPCcrossedOverFindable(-1.),
   fAODFilterBit(kSwitchOff),
   fWaiveITSNcls(-1)
 {
@@ -65,6 +66,7 @@ AliDielectronTrackCuts::AliDielectronTrackCuts(const char* name, const char* tit
   fRequireITSRefit(kFALSE),
   fRequireTPCRefit(kFALSE),
   fTPCNclRobustCut(-1),
+  fTPCcrossedOverFindable(-1.),
   fAODFilterBit(kSwitchOff),
   fWaiveITSNcls(-1)
 {
@@ -130,10 +132,18 @@ Bool_t AliDielectronTrackCuts::IsSelected(TObject* track)
   if (fRequireITSRefit) accept*=(vtrack->GetStatus()&AliVTrack::kITSrefit)>0;
   if (fRequireTPCRefit) accept*=(vtrack->GetStatus()&AliVTrack::kTPCrefit)>0;
 
+  Int_t nclr=TMath::Nint(vtrack->GetTPCClusterInfo(2,1));
   if (fTPCNclRobustCut>0){
-    Int_t nclr=TMath::Nint(vtrack->GetTPCClusterInfo(2,1));
-    accept*=(nclr>fTPCNclRobustCut);
+       accept*=(nclr>fTPCNclRobustCut);
   }
+  if (fTPCcrossedOverFindable > 0.) {
+       Int_t tpcNclsF = vtrack->GetTPCNclsF();
+       accept*=(tpcNclsF); //ESDtrackCut would return here true
+       if (tpcNclsF != 0) {//'accept' already negated above in this case above
+         accept*=(((Double_t)nclr/(Double_t)vtrack->GetTPCNclsF()) >= fTPCcrossedOverFindable);
+       }
+  }
+
 
   // use filter bit to speed up the AOD analysis (track pre-filter)
   // relevant filter bits are: