1 AliAnalysisTaskPi0Flow* AddTaskPHOSPi0Flow (const char* name = "PHOSPi0Flow",
2 const char* options = "",
3 UInt_t offlineTriggerMask = AliVEvent::kCentral,
4 AliAnalysisTaskPi0Flow::TriggerSelection internalTriggerSelection = AliAnalysisTaskPi0Flow::kNoSelection )
6 //Add a task AliAnalysisTaskPi0Flow to the analysis train
7 //Author: Henrik Qvigstad
10 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
12 ::Error("AddTaskPHOSPi0Flow", "No analysis manager to connect to");
16 if (!mgr->GetInputEventHandler()) {
17 ::Error("AddTaskPHOSPi0Flow", "This task requires an input event handler");
21 AliAnalysisTaskPi0Flow* task = new AliAnalysisTaskPi0Flow(Form("%sTask", name));
25 if( AliVEvent::kCentral == offlineTriggerMask ) {
27 Double_t cbin[nbins+1] = {0., 5., 8., 9., 10.};
28 TArrayD tbin(nbins+1, cbin);
29 Int_t nMixed[nbins] = {6, 6, 6, 6};
30 TArrayI tNMixed(nbins, nMixed);
31 task->SetCentralityBinning(tbin, tNMixed);
34 if( AliVEvent::kSemiCentral == offlineTriggerMask ) {
36 Double_t cbin[nbins+1] = {10., 11., 12., 13., 15., 20., 30., 40., 50.};
37 TArrayD tbin(nbins+1, cbin);
38 Int_t nMixed[nbins] = {40, 40, 40, 40, 40, 40, 40, 40};
39 TArrayI tNMixed(nbins, nMixed);
40 task->SetCentralityBinning(tbin, tNMixed);
42 // MB or PHOS Trigger:
43 if( AliVEvent::kMB == offlineTriggerMask || AliVEvent::kPHOSPb == offlineTriggerMask ) {
45 Double_t cbin[nbins+1] = {0., 10., 20., 30., 40., 50., 60., 70., 80.};
46 TArrayD tbin(nbins+1, cbin);
47 Int_t nMixed[nbins] = {6, 40, 40, 40, 40, 80, 80, 80};
48 TArrayI tNMixed(nbins, nMixed);
49 task->SetCentralityBinning(tbin, tNMixed);
52 //task->SetEventMixingRPBinning(9);
53 //task->SetMixingArraysLength(10);
54 task->SelectCollisionCandidates(offlineTriggerMask);
55 task->SetInternalTriggerSelection(internalTriggerSelection);
56 task->EnableTOFCut(true, 100.e-9, true);
58 if( TString(options).Contains("11h") )
59 task->SetPeriod( AliAnalysisTaskPi0Flow::kLHC11h );
62 mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer() );
64 TString cname(Form("%sCoutput1", name));
65 TString pname(Form("%s:%s", AliAnalysisManager::GetCommonFileName(), name));
66 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(cname.Data(), TList::Class(), AliAnalysisManager::kOutputContainer, pname.Data());
67 mgr->ConnectOutput(task, 1, coutput1);