// (with all AliTriggerAnalysis tokens? Only we the tokens
// actually used in the selection?) and clean up
+ AliESDVZERO *esdV0 = aEsd->GetVZEROData();
+ if(!esdV0) fSkipV0 = kTRUE;
+
// hardware trigger
Int_t fastORHW = triggerAnalysis->EvaluateTrigger(aEsd, AliTriggerAnalysis::kSPDGFO); // SPD number of chips from trigger bits (!)
// Int_t fastORHWL1 = triggerAnalysis->EvaluateTrigger(aEsd, AliTriggerAnalysis::kSPDGFOL1); // SPD number of chips from trigger bits in second layer (!)
Bool_t zdcA = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kZDCTDCA));
Bool_t zdcC = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kZDCTDCC));
Bool_t zdcTime = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kZDCTime));
+ Bool_t znABG = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kZNABG));
+ Bool_t znCBG = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kZNCBG));
Bool_t laserCut = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kTPCLaserWarmUp));
+ Bool_t hvDipCut = triggerAnalysis->EvaluateTrigger(aEsd, (AliTriggerAnalysis::Trigger) (AliTriggerAnalysis::kOfflineFlag | AliTriggerAnalysis::kTPCHVdip));
// Some "macros"
Bool_t mb1 = (fastOROffline > 0 || v0A || v0C) && (!v0BG);
if (laserCut)
fHistStatistics[iHistStat]->Fill(kStatLaserCut, i);
+ if (hvDipCut)
+ fHistStatistics[iHistStat]->Fill(kHVdipCut, i);
+
//if(ntrig >= 2 && !v0BG)
// fHistStatistics[iHistStat]->Fill(kStatAny2Hits, i);
if (zdcTime)
fHistStatistics[iHistStat]->Fill(kStatZDCTime, i);
+ if (znABG)
+ fHistStatistics[iHistStat]->Fill(kStatZNABG, i);
+ if (znCBG)
+ fHistStatistics[iHistStat]->Fill(kStatZNCBG, i);
if (v0A && v0C && !v0BG && (!bgID && fIsPP))
fHistStatistics[iHistStat]->Fill(kStatV0, i);
+ if (v0A && v0C && !v0BG && (!bgID && fIsPP) && !znABG && !znCBG)
+ fHistStatistics[iHistStat]->Fill(kStatV0ZN, i);
+
if (bgID && !v0BG)
fHistStatistics[iHistStat]->Fill(kStatBG, i);
AliTriggerAnalysis* triggerAnalysis = new AliTriggerAnalysis;
triggerAnalysis->SetAnalyzeMC(fMC);
- triggerAnalysis->EnableHistograms();
+ triggerAnalysis->EnableHistograms(fIsPP);
triggerAnalysis->SetSPDGFOThreshhold(1);
triggerAnalysis->SetDoFMD(kFALSE);
triggerAnalysis->SetCorrZDCCutParams(fTriggerOADB->GetZDCCutRefSumCorr(),
fTriggerOADB->GetZDCCutRefDeltaCorr(),
fTriggerOADB->GetZDCCutSigmaSumCorr(),
fTriggerOADB->GetZDCCutSigmaDeltaCorr());
+ triggerAnalysis->SetZNCorrCutParams(fTriggerOADB->GetZDCCutZNATimeCorrMin(),fTriggerOADB->GetZDCCutZNATimeCorrMax(),
+ fTriggerOADB->GetZDCCutZNCTimeCorrMin(),fTriggerOADB->GetZDCCutZNCTimeCorrMax());
fTriggerAnalysis.Add(triggerAnalysis);
}
h->GetXaxis()->SetBinLabel(kStatT0BG, "T0BG");
h->GetXaxis()->SetBinLabel(kStatT0PileUp, "T0 PileUp");
h->GetXaxis()->SetBinLabel(kStatLaserCut, "TPC Laser Wup Cut");
+ h->GetXaxis()->SetBinLabel(kHVdipCut, "TPC HV dip Cut");
h->GetXaxis()->SetBinLabel(kStatV0ABG, "V0A BG");
h->GetXaxis()->SetBinLabel(kStatV0CBG, "V0C BG");
h->GetXaxis()->SetBinLabel(kStatZDCA, "ZDCA");
h->GetXaxis()->SetBinLabel(kStatZDCC, "ZDCC");
h->GetXaxis()->SetBinLabel(kStatZDCAC, "ZDCA & ZDCC");
h->GetXaxis()->SetBinLabel(kStatZDCTime, "ZDC Time Cut");
+ h->GetXaxis()->SetBinLabel(kStatZNABG, "ZNA BG");
+ h->GetXaxis()->SetBinLabel(kStatZNCBG, "ZNC BG");
h->GetXaxis()->SetBinLabel(kStatMB1, "(FO >= 1 | V0A | V0C) & !V0 BG");
h->GetXaxis()->SetBinLabel(kStatMB1Prime, "(FO >= 2 | (FO >= 1 & (V0A | V0C)) | (V0A &v0C) ) & !V0 BG");
//h->GetXaxis()->SetBinLabel(kStatFO1AndV0, "FO >= 1 & (V0A | V0C) & !V0 BG");
h->GetXaxis()->SetBinLabel(kStatV0, "V0A & V0C & !V0 BG & !BG ID");
+ h->GetXaxis()->SetBinLabel(kStatV0ZN, "V0A & V0C & !V0 BG & !BG ID & !ZN BG");
h->GetXaxis()->SetBinLabel(kStatOffline, "Offline Trigger");
//h->GetXaxis()->SetBinLabel(kStatAny2Hits, "2 Hits & !V0 BG");
h->GetXaxis()->SetBinLabel(kStatBG, "Background identification");
for (Int_t iTrigClass = 0; iTrigClass < kNClasses; iTrigClass++){
delete [] rows[iTrigClass];
}
- }
+ } // end of ComputeBackground
fHistStatistics[0]->Write();
fHistStatistics[1]->Write();