ROOT logo
AliAnalysisTaskCMEv2A *AddTaskCMEv2A
(
 int debug = 0,
 bool doMC = true,
 /* ULong64_t trigger = AliVEvent::kMB|AliVEvent::kCentral|AliVEvent::kSemiCentral, */
 ULong64_t trigger = AliVEvent::kMB,
 bool dopupcut = true,
 bool doeffcorr = true,
 int centhandle = 1,
 int fbit = 128,
 float zvtxcut = 10.0,
 float centcut = 5.0,
 int nclscut = 60,
 float dcacutz = 50.0,
 float dcacutxy = 50.0,
 bool dodcacuts = false,
 float outeta = 0.8,
 float ineta = 0.5,
 float excleta = 0.0,
 float ptmin = 0.2,
 float ptmax = 5.0,
 bool doacuts = true,
 float nspid = 2.0,
 int cbinlo = 3,
 int cbinhi = 4,
 bool donested = true,
 bool dopaircut = false,
 float centlo = 20.0,
 float centhi = 60.0,
 char *name = "TaskCMEv2A"
)
{


  // --- get analysis manager
  AliAnalysisManager *aam = AliAnalysisManager::GetAnalysisManager();
  if(!aam) 
    {
      cout<<"No analysis manager, now dying..."<<endl;
      return NULL;
    }  
  cout<<"Memory address of AliAnalysisManager is "<<aam<<endl;


  // --- check that input handler exists
  if(!aam->GetInputEventHandler())
    {
      cout<<"No input even handler, now dying..."<<endl;
      return NULL;
    }   


  // --- instantiate analysis task
  AliAnalysisTaskCMEv2A *task = new AliAnalysisTaskCMEv2A(name);
  cout<<"Memory address of task is "<<task<<endl;
  // --- set parameters
  task->SetParameters();
  // --- set task methods as needed
  task->SetDebug(debug);
  task->SetDoMC(doMC);
  task->SetTrigger(trigger);
  task->SetDoEffCorrection(doeffcorr);
  task->SetCentHandle(centhandle);
  task->SetFilterBit(fbit);
  task->SetZvtxCut(zvtxcut);
  task->SetCentCut(centcut);
  task->SetNclsCut(nclscut);
  task->SetDCAcutZ(dcacutz);
  task->SetDCAcutXY(dcacutxy);
  task->SetDoDCAcuts(dodcacuts);
  task->SetOutEta(outeta);
  task->SetInEta(ineta);
  task->SetExclEta(excleta);
  task->SetPtMin(ptmin);
  task->SetPtMax(ptmax);
  task->SetDoAcuts(doacuts);
  task->SetSigmaPID(nspid);
  task->SetCentBinLow(cbinlo);
  task->SetCentBinHigh(cbinhi);
  task->SetDoNested(donested);
  task->SetDoPairCut(dopaircut);
  task->SetCentDCLow(centlo);
  task->SetCentDCHigh(centhi);


  // --- get input and output managers

  TString outputFileName = AliAnalysisManager::GetCommonFileName();
  outputFileName += Form(":Out%s",name);
 
  AliAnalysisDataContainer *aadci = aam->GetCommonInputContainer();
  AliAnalysisDataContainer *aadco = aam->CreateContainer
    (
     Form("List%s",name), 
     TList::Class(),    
     AliAnalysisManager::kOutputContainer, 
     outputFileName.Data()
    );
// observe that ".root" is automatically appended


  // --- add task and connect input and output managers
  aam->AddTask(task);
  aam->ConnectInput(task,0,aadci);
  aam->ConnectOutput(task,1,aadco);

  // --- return pointer to Task
  return task;

}
 AddTaskCMEv2A.C:1
 AddTaskCMEv2A.C:2
 AddTaskCMEv2A.C:3
 AddTaskCMEv2A.C:4
 AddTaskCMEv2A.C:5
 AddTaskCMEv2A.C:6
 AddTaskCMEv2A.C:7
 AddTaskCMEv2A.C:8
 AddTaskCMEv2A.C:9
 AddTaskCMEv2A.C:10
 AddTaskCMEv2A.C:11
 AddTaskCMEv2A.C:12
 AddTaskCMEv2A.C:13
 AddTaskCMEv2A.C:14
 AddTaskCMEv2A.C:15
 AddTaskCMEv2A.C:16
 AddTaskCMEv2A.C:17
 AddTaskCMEv2A.C:18
 AddTaskCMEv2A.C:19
 AddTaskCMEv2A.C:20
 AddTaskCMEv2A.C:21
 AddTaskCMEv2A.C:22
 AddTaskCMEv2A.C:23
 AddTaskCMEv2A.C:24
 AddTaskCMEv2A.C:25
 AddTaskCMEv2A.C:26
 AddTaskCMEv2A.C:27
 AddTaskCMEv2A.C:28
 AddTaskCMEv2A.C:29
 AddTaskCMEv2A.C:30
 AddTaskCMEv2A.C:31
 AddTaskCMEv2A.C:32
 AddTaskCMEv2A.C:33
 AddTaskCMEv2A.C:34
 AddTaskCMEv2A.C:35
 AddTaskCMEv2A.C:36
 AddTaskCMEv2A.C:37
 AddTaskCMEv2A.C:38
 AddTaskCMEv2A.C:39
 AddTaskCMEv2A.C:40
 AddTaskCMEv2A.C:41
 AddTaskCMEv2A.C:42
 AddTaskCMEv2A.C:43
 AddTaskCMEv2A.C:44
 AddTaskCMEv2A.C:45
 AddTaskCMEv2A.C:46
 AddTaskCMEv2A.C:47
 AddTaskCMEv2A.C:48
 AddTaskCMEv2A.C:49
 AddTaskCMEv2A.C:50
 AddTaskCMEv2A.C:51
 AddTaskCMEv2A.C:52
 AddTaskCMEv2A.C:53
 AddTaskCMEv2A.C:54
 AddTaskCMEv2A.C:55
 AddTaskCMEv2A.C:56
 AddTaskCMEv2A.C:57
 AddTaskCMEv2A.C:58
 AddTaskCMEv2A.C:59
 AddTaskCMEv2A.C:60
 AddTaskCMEv2A.C:61
 AddTaskCMEv2A.C:62
 AddTaskCMEv2A.C:63
 AddTaskCMEv2A.C:64
 AddTaskCMEv2A.C:65
 AddTaskCMEv2A.C:66
 AddTaskCMEv2A.C:67
 AddTaskCMEv2A.C:68
 AddTaskCMEv2A.C:69
 AddTaskCMEv2A.C:70
 AddTaskCMEv2A.C:71
 AddTaskCMEv2A.C:72
 AddTaskCMEv2A.C:73
 AddTaskCMEv2A.C:74
 AddTaskCMEv2A.C:75
 AddTaskCMEv2A.C:76
 AddTaskCMEv2A.C:77
 AddTaskCMEv2A.C:78
 AddTaskCMEv2A.C:79
 AddTaskCMEv2A.C:80
 AddTaskCMEv2A.C:81
 AddTaskCMEv2A.C:82
 AddTaskCMEv2A.C:83
 AddTaskCMEv2A.C:84
 AddTaskCMEv2A.C:85
 AddTaskCMEv2A.C:86
 AddTaskCMEv2A.C:87
 AddTaskCMEv2A.C:88
 AddTaskCMEv2A.C:89
 AddTaskCMEv2A.C:90
 AddTaskCMEv2A.C:91
 AddTaskCMEv2A.C:92
 AddTaskCMEv2A.C:93
 AddTaskCMEv2A.C:94
 AddTaskCMEv2A.C:95
 AddTaskCMEv2A.C:96
 AddTaskCMEv2A.C:97
 AddTaskCMEv2A.C:98
 AddTaskCMEv2A.C:99
 AddTaskCMEv2A.C:100
 AddTaskCMEv2A.C:101
 AddTaskCMEv2A.C:102
 AddTaskCMEv2A.C:103
 AddTaskCMEv2A.C:104
 AddTaskCMEv2A.C:105
 AddTaskCMEv2A.C:106
 AddTaskCMEv2A.C:107
 AddTaskCMEv2A.C:108
 AddTaskCMEv2A.C:109
 AddTaskCMEv2A.C:110
 AddTaskCMEv2A.C:111