]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/SPECTRA/macros/AddTaskITSsaSpectra.C
adding ITS standalone macro (E.Biolcati)
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / macros / AddTaskITSsaSpectra.C
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();
7         if (!mgr) {
8                 ::Error("AddTaskITSsaSpectra", "No analysis manager to connect to.");
9                 return NULL;
10         }   
11
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");
16                 return NULL;
17         }   
18
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");
22                 return NULL;
23         }
24
25         Bool_t isMC=kFALSE;
26         if (mgr->GetMCtruthEventHandler()) isMC=kTRUE;
27
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);
34
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";
40
41         AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("clistITSsa",
42                         TList::Class(),
43                         AliAnalysisManager::kOutputContainer,
44                         outputFileName );
45
46         mgr->ConnectInput(taskits, 0, mgr->GetCommonInputContainer());
47         mgr->ConnectOutput(taskits, 1, coutput1);
48         return taskits;
49 }