ROOT logo
AliAnalysisTaskPi0FlowMC* AddTaskPHOSPi0pPbMCHijing (const char* name = "PHOSPi0pPbMCHijing",
					    const char* options = "",
					       UInt_t offlineTriggerMask = AliVEvent::kINT7,
					       const char* centrality = "V0M",
					       const Int_t nCentBins = 5,
					       const Int_t centEdge0 = 0,
					       const Int_t centEdge1 = 20,
					       const Int_t centEdge2 = 40,
					       const Int_t centEdge3 = 60,
					       const Int_t centEdge4 = 80,
					       const Int_t centEdge5 = 100)
{
  //Add a task AliAnalysisTaskPi0FlowMC to the analysis train, for LHC13 PbP MC productions
  //Author:  Paul Baetzing
  /* $Id$ */

  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr) {
    ::Error("AddTaskPHOSPi0pPbMCHijing", "No analysis manager to connect to");
    return NULL;
  }
  
  if (!mgr->GetInputEventHandler()) {
    ::Error("AddTaskPHOSPi0pPbMCHijing", "This task requires an input event handler");
    return NULL;
  }

  AliAnalysisTaskPi0FlowMCHijing* task = new AliAnalysisTaskPi0FlowMCHijing(Form("%sTask", name));

  if( AliVEvent::kINT7 == offlineTriggerMask ) {
    if (nCentBins<1) {
      ::Error("AddTaskPHOSPi0pPb", Form("Invalid number of centrality bins: %d",nCentBins));
      return NULL;
    }
    Double_t *cbin = new Double_t[nCentBins+1];
    cbin[0] = centEdge0;
    cbin[1] = centEdge1;
    if (nCentBins > 1) cbin[2] = centEdge2;
    if (nCentBins > 2) cbin[3] = centEdge3;
    if (nCentBins > 3) cbin[4] = centEdge4;
    if (nCentBins > 4) cbin[5] = centEdge5;
    TArrayD tbin(nCentBins+1, cbin);

    Int_t    *nMixed = new Int_t[nCentBins];
    for (Int_t ibin=0; ibin<nCentBins; ibin++) nMixed[ibin] = 20;
    TArrayI tNMixed(nCentBins, nMixed);
    task->SetCentralityBinning(tbin, tNMixed);
  }

  task->SetCentralityEstimator(centrality);


  //task->SetEventMixingRPBinning(9);
  //task->SetMixingArraysLength(10);
  task->SelectCollisionCandidates(offlineTriggerMask);
  
  task->SetEnablePHOSModule(2, kFALSE);

  mgr->AddTask(task);
  mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer() );
  
  TString cname(Form("%sCoutput1", name));
  TString pname(Form("%s:%s", AliAnalysisManager::GetCommonFileName(), name));
  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(cname.Data(), TList::Class(), AliAnalysisManager::kOutputContainer, pname.Data());
  mgr->ConnectOutput(task, 1, coutput1);
  
  return task;
}

 AddTaskPHOSPi0pPbMCHijing.C:1
 AddTaskPHOSPi0pPbMCHijing.C:2
 AddTaskPHOSPi0pPbMCHijing.C:3
 AddTaskPHOSPi0pPbMCHijing.C:4
 AddTaskPHOSPi0pPbMCHijing.C:5
 AddTaskPHOSPi0pPbMCHijing.C:6
 AddTaskPHOSPi0pPbMCHijing.C:7
 AddTaskPHOSPi0pPbMCHijing.C:8
 AddTaskPHOSPi0pPbMCHijing.C:9
 AddTaskPHOSPi0pPbMCHijing.C:10
 AddTaskPHOSPi0pPbMCHijing.C:11
 AddTaskPHOSPi0pPbMCHijing.C:12
 AddTaskPHOSPi0pPbMCHijing.C:13
 AddTaskPHOSPi0pPbMCHijing.C:14
 AddTaskPHOSPi0pPbMCHijing.C:15
 AddTaskPHOSPi0pPbMCHijing.C:16
 AddTaskPHOSPi0pPbMCHijing.C:17
 AddTaskPHOSPi0pPbMCHijing.C:18
 AddTaskPHOSPi0pPbMCHijing.C:19
 AddTaskPHOSPi0pPbMCHijing.C:20
 AddTaskPHOSPi0pPbMCHijing.C:21
 AddTaskPHOSPi0pPbMCHijing.C:22
 AddTaskPHOSPi0pPbMCHijing.C:23
 AddTaskPHOSPi0pPbMCHijing.C:24
 AddTaskPHOSPi0pPbMCHijing.C:25
 AddTaskPHOSPi0pPbMCHijing.C:26
 AddTaskPHOSPi0pPbMCHijing.C:27
 AddTaskPHOSPi0pPbMCHijing.C:28
 AddTaskPHOSPi0pPbMCHijing.C:29
 AddTaskPHOSPi0pPbMCHijing.C:30
 AddTaskPHOSPi0pPbMCHijing.C:31
 AddTaskPHOSPi0pPbMCHijing.C:32
 AddTaskPHOSPi0pPbMCHijing.C:33
 AddTaskPHOSPi0pPbMCHijing.C:34
 AddTaskPHOSPi0pPbMCHijing.C:35
 AddTaskPHOSPi0pPbMCHijing.C:36
 AddTaskPHOSPi0pPbMCHijing.C:37
 AddTaskPHOSPi0pPbMCHijing.C:38
 AddTaskPHOSPi0pPbMCHijing.C:39
 AddTaskPHOSPi0pPbMCHijing.C:40
 AddTaskPHOSPi0pPbMCHijing.C:41
 AddTaskPHOSPi0pPbMCHijing.C:42
 AddTaskPHOSPi0pPbMCHijing.C:43
 AddTaskPHOSPi0pPbMCHijing.C:44
 AddTaskPHOSPi0pPbMCHijing.C:45
 AddTaskPHOSPi0pPbMCHijing.C:46
 AddTaskPHOSPi0pPbMCHijing.C:47
 AddTaskPHOSPi0pPbMCHijing.C:48
 AddTaskPHOSPi0pPbMCHijing.C:49
 AddTaskPHOSPi0pPbMCHijing.C:50
 AddTaskPHOSPi0pPbMCHijing.C:51
 AddTaskPHOSPi0pPbMCHijing.C:52
 AddTaskPHOSPi0pPbMCHijing.C:53
 AddTaskPHOSPi0pPbMCHijing.C:54
 AddTaskPHOSPi0pPbMCHijing.C:55
 AddTaskPHOSPi0pPbMCHijing.C:56
 AddTaskPHOSPi0pPbMCHijing.C:57
 AddTaskPHOSPi0pPbMCHijing.C:58
 AddTaskPHOSPi0pPbMCHijing.C:59
 AddTaskPHOSPi0pPbMCHijing.C:60
 AddTaskPHOSPi0pPbMCHijing.C:61
 AddTaskPHOSPi0pPbMCHijing.C:62
 AddTaskPHOSPi0pPbMCHijing.C:63
 AddTaskPHOSPi0pPbMCHijing.C:64
 AddTaskPHOSPi0pPbMCHijing.C:65
 AddTaskPHOSPi0pPbMCHijing.C:66
 AddTaskPHOSPi0pPbMCHijing.C:67
 AddTaskPHOSPi0pPbMCHijing.C:68
 AddTaskPHOSPi0pPbMCHijing.C:69
 AddTaskPHOSPi0pPbMCHijing.C:70