// Checking if Dplus is in fiducial acceptance region
//
+ if(fMaxRapidityCand>-998.){
+ if(TMath::Abs(y) > fMaxRapidityCand) return kFALSE;
+ else return kTRUE;
+ }
+
if(pt > 5.) {
// applying cut for pt > 5 GeV
AliDebug(2,Form("pt of D+ = %f (> 5), cutting at |y| < 0.8",pt));
//recalculate vertex w/o daughters
AliAODVertex *origownvtx=0x0;
- if(fRemoveDaughtersFromPrimary) {
+ if(fRemoveDaughtersFromPrimary && !fUseMCVertex) {
if(d->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*d->GetOwnPrimaryVtx());
if(!RecalcOwnPrimaryVtx(d,aod)) {
CleanOwnPrimaryVtx(d,aod,origownvtx);
}
}
+ if(fUseMCVertex) {
+ if(d->GetOwnPrimaryVtx()) origownvtx=new AliAODVertex(*d->GetOwnPrimaryVtx());
+ if(!SetMCPrimaryVtx(d,aod)) {
+ CleanOwnPrimaryVtx(d,aod,origownvtx);
+ return 0;
+ }
+ }
+
Int_t ptbin=PtBin(pt);
if (ptbin==-1) {
CleanOwnPrimaryVtx(d,aod,origownvtx);
delete [] anacutsval;
anacutsval=NULL;
+ delete esdTrackCuts;
+ esdTrackCuts=NULL;
+
return;
}
delete [] ptbins;
ptbins=NULL;
+ delete esdTrackCuts;
+ esdTrackCuts=NULL;
+
return;
}