AliEmcalPhysicsSelectionTask* AddTaskEmcalPhysicsSelection(
Bool_t exFOnly,
Bool_t wHistos = kTRUE,
UInt_t triggers = 0,
Double_t minE = -1,
Double_t minPt = -1,
Double_t vz = -1,
Bool_t vzdiff = kFALSE,
Double_t cmin = -1,
Double_t cmax = -1,
Double_t minCellTrackScale = -1,
Double_t maxCellTrackScale = -1,
Bool_t byPassPhysSelTask = kFALSE,
Bool_t skip1024Bug = kFALSE
)
{
if(byPassPhysSelTask)
return 0;
// Add EMCAL physics selection task.
AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr) {
::Error("AddTaskEmcalPhysicsSelection", "No analysis manager found.");
return 0;
}
if (!mgr->GetInputEventHandler()) {
::Error("AddTaskEmcalPhysicsSelection", "This task requires an input event handler");
return NULL;
}
Bool_t isMC = (mgr->GetMCtruthEventHandler()) ? kTRUE:kFALSE;
AliEmcalPhysicsSelectionTask *pseltask = new AliEmcalPhysicsSelectionTask("EmcalPSel");
pseltask->SetDoWriteHistos(wHistos);
AliEmcalPhysicsSelection *physSel = static_cast<AliEmcalPhysicsSelection*>(pseltask->GetPhysicsSelection());
if (physSel) {
physSel->SetSkipFastOnly(exFOnly);
if (isMC)
physSel->SetAnalyzeMC();
physSel->SetClusMinE(minE);
physSel->SetTrackMinPt(minPt);
physSel->SetTriggers(triggers);
physSel->SetCentRange(cmin,cmax);
physSel->SetZVertex(vz);
physSel->SetCheckZvertexDiff(vzdiff);
physSel->SetCellTrackScale(minCellTrackScale,maxCellTrackScale);
physSel->SetSkip1024Bug(skip1024Bug);
} else {
::Error("AddTaskEmcalPhysicsSelection", "No AliEmcalPhysicsSelection object found.");
}
mgr->AddTask(pseltask);
AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
AliAnalysisDataContainer *coutput = mgr->CreateContainer("cstatsout",
TList::Class(),
AliAnalysisManager::kOutputContainer,
"EventStat_temp.root");
mgr->ConnectInput(pseltask, 0, cinput);
mgr->ConnectOutput(pseltask, 1, coutput);
return pseltask;
}
AddTaskEmcalPhysicsSelection.C:1 AddTaskEmcalPhysicsSelection.C:2 AddTaskEmcalPhysicsSelection.C:3 AddTaskEmcalPhysicsSelection.C:4 AddTaskEmcalPhysicsSelection.C:5 AddTaskEmcalPhysicsSelection.C:6 AddTaskEmcalPhysicsSelection.C:7 AddTaskEmcalPhysicsSelection.C:8 AddTaskEmcalPhysicsSelection.C:9 AddTaskEmcalPhysicsSelection.C:10 AddTaskEmcalPhysicsSelection.C:11 AddTaskEmcalPhysicsSelection.C:12 AddTaskEmcalPhysicsSelection.C:13 AddTaskEmcalPhysicsSelection.C:14 AddTaskEmcalPhysicsSelection.C:15 AddTaskEmcalPhysicsSelection.C:16 AddTaskEmcalPhysicsSelection.C:17 AddTaskEmcalPhysicsSelection.C:18 AddTaskEmcalPhysicsSelection.C:19 AddTaskEmcalPhysicsSelection.C:20 AddTaskEmcalPhysicsSelection.C:21 AddTaskEmcalPhysicsSelection.C:22 AddTaskEmcalPhysicsSelection.C:23 AddTaskEmcalPhysicsSelection.C:24 AddTaskEmcalPhysicsSelection.C:25 AddTaskEmcalPhysicsSelection.C:26 AddTaskEmcalPhysicsSelection.C:27 AddTaskEmcalPhysicsSelection.C:28 AddTaskEmcalPhysicsSelection.C:29 AddTaskEmcalPhysicsSelection.C:30 AddTaskEmcalPhysicsSelection.C:31 AddTaskEmcalPhysicsSelection.C:32 AddTaskEmcalPhysicsSelection.C:33 AddTaskEmcalPhysicsSelection.C:34 AddTaskEmcalPhysicsSelection.C:35 AddTaskEmcalPhysicsSelection.C:36 AddTaskEmcalPhysicsSelection.C:37 AddTaskEmcalPhysicsSelection.C:38 AddTaskEmcalPhysicsSelection.C:39 AddTaskEmcalPhysicsSelection.C:40 AddTaskEmcalPhysicsSelection.C:41 AddTaskEmcalPhysicsSelection.C:42 AddTaskEmcalPhysicsSelection.C:43 AddTaskEmcalPhysicsSelection.C:44 AddTaskEmcalPhysicsSelection.C:45 AddTaskEmcalPhysicsSelection.C:46 AddTaskEmcalPhysicsSelection.C:47 AddTaskEmcalPhysicsSelection.C:48 AddTaskEmcalPhysicsSelection.C:49 AddTaskEmcalPhysicsSelection.C:50 AddTaskEmcalPhysicsSelection.C:51 AddTaskEmcalPhysicsSelection.C:52 AddTaskEmcalPhysicsSelection.C:53 AddTaskEmcalPhysicsSelection.C:54 AddTaskEmcalPhysicsSelection.C:55 AddTaskEmcalPhysicsSelection.C:56 AddTaskEmcalPhysicsSelection.C:57 AddTaskEmcalPhysicsSelection.C:58 AddTaskEmcalPhysicsSelection.C:59 AddTaskEmcalPhysicsSelection.C:60 AddTaskEmcalPhysicsSelection.C:61 AddTaskEmcalPhysicsSelection.C:62 AddTaskEmcalPhysicsSelection.C:63 AddTaskEmcalPhysicsSelection.C:64 AddTaskEmcalPhysicsSelection.C:65 AddTaskEmcalPhysicsSelection.C:66