]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/EBYE/PIDFluctuation/macros/AddAliEbyEPidTTaskMC.C
Merge branch 'TPCdev' of https://git.cern.ch/reps/AliRoot into TPCdev
[u/mrichter/AliRoot.git] / PWGCF / EBYE / PIDFluctuation / macros / AddAliEbyEPidTTaskMC.C
1 //=========================================================================//
2 //                                                                         //
3 //           Analysis AddTask for Particle Ratio Fluctuation Study         //
4 //              Author: Deepika Rathee  || Satyajit Jenara                 //
5 //                      drathee@cern.ch || sjena@cern.ch 
6 //                        Thu Jun 19 11:44:51 CEST 2014
7 //                                                                         //
8 //=========================================================================//
9
10 void AddAliEbyEPidTTaskMC(Double_t ptl=0.5, 
11                           Int_t AODfilterBit = 768, 
12                           Int_t pidtype = 2, 
13                           Int_t requestTofPid = 1, 
14                           Double_t nSigmaCut = 3., 
15                           TString centralityEstimator = "V0M", 
16                           TString ctaskname = "2011") {
17   
18   Bool_t isMC = 1; 
19   
20   TString taskname = "EbyECF_";
21   taskname += ctaskname;
22   taskname += "_";
23   taskname += Form("%d",isMC);
24   taskname += "_";
25   taskname += centralityEstimator;
26   taskname += "_";
27   taskname += Form("%d",AODfilterBit);
28   
29  
30     AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
31   if (!mgr) {
32     ::Error("AddTaskFluctuations", "No analysis manager to connect to.");
33     return NULL;
34   }
35
36   if (!mgr->GetInputEventHandler()) {
37     ::Error("AddTaskFluctuations", "This task requires an input event handler");
38     return NULL;
39   }
40   TString type = mgr->GetInputEventHandler()->GetDataType(); 
41
42  
43   TString basefilename = AliAnalysisManager::GetCommonFileName();
44   
45   
46   AliHelperPID* help = new AliHelperPID();
47   help->SetNSigmaCut(nSigmaCut);
48   help->SetPIDType(pidtype);        
49   help->SetfRequestTOFPID(requestTofPid);
50   help->SetfPtTOFPID(ptl);
51   help->SetisMC(isMC);
52   
53   AliEbyEPidTTaskMC *taskqa;
54   taskqa = new AliEbyEPidTTaskMC(taskname.Data());
55   taskqa->SetAODtrackCutBit(AODfilterBit);
56   taskqa->SetCentralityEstimator(centralityEstimator.Data());
57   taskqa->SetAnalysisType(isMC);
58   taskqa->SetHelperPID(help);
59   mgr->AddTask(taskqa);
60   
61   AliAnalysisDataContainer *coutqa = mgr->CreateContainer(Form("%s_QA",taskname.Data()),TList::Class(),AliAnalysisManager::kOutputContainer, Form("%s",basefilename.Data()));
62   AliAnalysisDataContainer *coutt = mgr->CreateContainer("fEventTree",TTree::Class(),AliAnalysisManager::kOutputContainer, Form("%s",basefilename.Data()));
63
64   mgr->ConnectInput(taskqa, 0, mgr->GetCommonInputContainer());
65   mgr->ConnectOutput(taskqa, 1, coutqa);
66  mgr->ConnectOutput(taskqa, 2, coutt);
67  
68  
69   return;
70 }