1 AliAnalysisTaskSEITSsaSpectra *AddTaskITSsaSpectra(Bool_t optNtuple=kFALSE){
2 // Creates, configures and attaches to the train the task for pi, K , spectra
3 // with ITS standalone tracks
4 // Get the pointer to the existing analysis manager via the static access method.
5 //==============================================================================
6 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
8 ::Error("AddTaskITSsaSpectra", "No analysis manager to connect to.");
12 // Check the analysis type using the event handlers connected to the analysis manager.
13 //==============================================================================
14 if (!mgr->GetInputEventHandler()) {
15 ::Error("AddTaskITSsaSpectra", "This task requires an input event handler");
19 TString type = mgr->GetInputEventHandler()->GetDataType(); // can be "ESD" or "AOD"
20 if(type.Contains("AOD")){
21 ::Error("AddTaskITSsaSpectra", "This task requires to run on ESD");
26 if (mgr->GetMCtruthEventHandler()) isMC=kTRUE;
28 // Create and configure the task
29 AliAnalysisTaskSEITSsaSpectra *taskits = new AliAnalysisTaskSEITSsaSpectra();
30 taskits->SelectCollisionCandidates();
31 taskits->SetReadMC(isMC);
32 taskits->SetFillNtuple(optNtuple);
33 mgr->AddTask(taskits);
35 // Create ONLY the output containers for the data produced by the task.
36 // Get and connect other common input/output containers via the manager as below
37 //==============================================================================
38 TString outputFileName = AliAnalysisManager::GetCommonFileName();
39 outputFileName += ":PWG2SpectraITSsa";
41 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("clistITSsa",
43 AliAnalysisManager::kOutputContainer,
46 mgr->ConnectInput(taskits, 0, mgr->GetCommonInputContainer());
47 mgr->ConnectOutput(taskits, 1, coutput1);