]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG3/vertexingHF/AliRDHFCutsD0toKpi.cxx
Update of task for D0 analysis (AndreaR)
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliRDHFCutsD0toKpi.cxx
index 15c23e84beef71cadc9ddb48c955e9bcdf49d1db..c804635bee9f6c4876ee5dfae0b3338f8206d78a 100644 (file)
@@ -36,7 +36,6 @@ ClassImp(AliRDHFCutsD0toKpi)
 //--------------------------------------------------------------------------
 AliRDHFCutsD0toKpi::AliRDHFCutsD0toKpi(const char* name) : 
 AliRDHFCuts(name),
-fRemoveDaughtersFromPrimary(kFALSE),
 fUseSpecialCuts(kFALSE)
 {
   //
@@ -76,11 +75,11 @@ fUseSpecialCuts(kFALSE)
   Float_t limits[2]={0,999999999.};
   SetPtBins(2,limits);
 
+  SetRemoveDaughtersFromPrim(kTRUE);
 }
 //--------------------------------------------------------------------------
 AliRDHFCutsD0toKpi::AliRDHFCutsD0toKpi(const AliRDHFCutsD0toKpi &source) :
   AliRDHFCuts(source),  
-  fRemoveDaughtersFromPrimary(source.fRemoveDaughtersFromPrimary),
   fUseSpecialCuts(source.fUseSpecialCuts)
 {
   //
@@ -97,7 +96,6 @@ AliRDHFCutsD0toKpi &AliRDHFCutsD0toKpi::operator=(const AliRDHFCutsD0toKpi &sour
   if(&source == this) return *this;
 
   AliRDHFCuts::operator=(source);
-  fRemoveDaughtersFromPrimary=source.fRemoveDaughtersFromPrimary;
   fUseSpecialCuts=source.fUseSpecialCuts;
 
   return *this;
@@ -231,7 +229,11 @@ Int_t AliRDHFCutsD0toKpi::IsSelected(TObject* obj,Int_t selectionLevel,AliAODEve
     //recalculate vertex w/o daughters
     AliAODVertex *origownvtx=0x0;
     AliAODVertex *recvtx=0x0;
-    if(aod && fRemoveDaughtersFromPrimary) {
+    if(fRemoveDaughtersFromPrimary) {
+      if(!aod) {
+       AliError("Can not remove daughters from vertex without AOD event");
+       return 0;
+      }
       if(d->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*d->GetOwnPrimaryVtx());
       recvtx=d->RemoveDaughtersFromPrimaryVtx(aod);
       if(!recvtx){
@@ -559,8 +561,8 @@ Int_t AliRDHFCutsD0toKpi::IsSelectedPID(AliAODRecoDecayHF* d)
     
     combinedPID[0][0]=isKaonPionTOF[0][0]+isKaonPionTPC[0][0];
     combinedPID[0][1]=isKaonPionTOF[0][1]+isKaonPionTPC[0][1];
-    combinedPID[0][0]=isKaonPionTOF[1][0]+isKaonPionTPC[1][0];
-    combinedPID[0][1]=isKaonPionTOF[1][1]+isKaonPionTPC[1][1];
+    combinedPID[1][0]=isKaonPionTOF[1][0]+isKaonPionTPC[1][0];
+    combinedPID[1][1]=isKaonPionTOF[1][1]+isKaonPionTPC[1][1];
     
     if(combinedPID[0][0]<=0&&combinedPID[1][0]<=0){
       fWhyRejection=32;// reject cases where the Kaon is not identified