]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FEMTOSCOPY/macros/AddTaskFemtoESE.C
Add ESE AddTask macro
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / macros / AddTaskFemtoESE.C
1 AliAnalysisTaskFemtoESE *AddTaskFemtoESE(Double_t qmin = 0, Double_t qmax = 100, Int_t EPdet = 1, Int_t qdet = 0)
2 {
3   // Get the pointer to the existing analysis manager via the static access method.
4   //==============================================================================
5   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
6   if (!mgr) {
7     ::Error("AddTaskFemtoESEtest", "No analysis manager to connect to.");
8     return NULL;
9   }  
10
11   TString taskname = Form("FemtoESETask_qperc%.2i_%.2i_EP%i_q%i",(Int_t)qmin,(Int_t)qmax,EPdet,qdet);
12
13   // Create the task and configure it.
14   //===========================================================================
15   AliAnalysisTaskFemtoESE* ana = new  AliAnalysisTaskFemtoESE(taskname);
16
17   ana->SetQPercCuts(qmin,qmax);
18   ana->SetEPDetector(EPdet); // detector used for event plane (0-V0A, 1-V0C)
19   ana->SetQPercDetector(qdet); // detector used for q-vector (0-V0A, 1-V0C)
20
21   mgr->AddTask(ana);
22   
23   // Create ONLY the output containers for the data produced by the task.
24   // Get and connect other common input/output containers via the manager as below
25   //==============================================================================
26   
27   TString contname(taskname);
28   contname += "_output";
29
30   TString outputFileName = AliAnalysisManager::GetCommonFileName();  
31
32   AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
33   AliAnalysisDataContainer *coutputA = mgr->CreateContainer(contname, TList::Class(), AliAnalysisManager::kOutputContainer, outputFileName);
34   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(Form("HelperPIDOutput_%s",contname.Data()), AliHelperPID::Class(), AliAnalysisManager::kOutputContainer, outputFileName);
35   
36   //connect containers
37   mgr->ConnectInput(ana, 0, cinput);
38   mgr->ConnectOutput(ana, 1, coutputA);
39   mgr->ConnectOutput(ana, 2, coutput1);
40   mgr->AddTask(ana);
41   return ana;
42
43 }