]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGDQ/dielectron/macrosLMEE/AddTask_cbaumann_LMEEpp2010.C
bug fixes
[u/mrichter/AliRoot.git] / PWGDQ / dielectron / macrosLMEE / AddTask_cbaumann_LMEEpp2010.C
CommitLineData
0ff2c21d 1AliAnalysisTask *AddTask_cbaumann_LMEEpp2010(Bool_t runTwo=kFALSE){
911affe5 2 //get the current analysis manager
3 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
4 if (!mgr) {
5 Error("AddTask_cbaumann_LMEEpp2010", "No analysis manager found.");
6 return 0;
7 }
8
9 //set config file name
10 TString configFile("$ALICE_ROOT/PWGDQ/dielectron/macrosLMEE/ConfigLMEEpp2010.C");
11
12 //AOD Usage not yet testes/avialable-------------------------------------
13
14 if (mgr->GetInputEventHandler()->IsA()==AliAODInputHandler::Class()){
15 ::Info("AddTaskLMEEpp2010", "no dedicated AOD configuration");
16// configFile="$TRAIN_ROOT/util/dielectron/dielectron/macros/ConfigLMEEpp2010AOD.C";
17
18 }
19
20 //Do we have an MC handler?
21 Bool_t hasMC=(AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler()!=0x0);
22
23
24// create task and add it to the manager
25
26 gROOT->LoadMacro("$ALICE_ROOT/PWGDQ/dielectron/macrosLMEE/LMEECutLib.C");
27 gROOT->LoadMacro(configFile.Data());
28 LMEECutLib* cutlib = new LMEECutLib();
29 AliAnalysisTaskMultiDielectron *task=new AliAnalysisTaskMultiDielectron("MultiDiEData");
30 if (!hasMC) task->UsePhysicsSelection();
31 task->SetEventFilter(cutlib->GetEventCuts(LMEECutLib::kpp2010TPCandTOF)); //
32
33
34 //load dielectron configuration file
35
36 //add dielectron analysis with different cuts to the task
cb0b0223 37
911affe5 38 AliDielectron *lowmass1=ConfigLMEEpp2010(1,hasMC);
39 task->AddDielectron(lowmass1);
40 printf("add: %s\n",lowmass1->GetName());
0ff2c21d 41
42if (runTwo) {
43 AliDielectron *lowmass2=ConfigLMEEpp2010(2,hasMC);
44 task->AddDielectron(lowmass2);
45 printf("add: %s\n",lowmass2->GetName());
46}
cb0b0223 47
911affe5 48 mgr->AddTask(task);
49
50 //create output container
51 AliAnalysisDataContainer *coutput1 =
52 mgr->CreateContainer("cbaumann_LMEEpp2010_tree",
53 TTree::Class(),
54 AliAnalysisManager::kExchangeContainer,
55 "cbaumann_LMEEpp2010_default.root");
56
57 AliAnalysisDataContainer *cOutputHist1 =
58 mgr->CreateContainer("cbaumann_LMEEpp2010_out",
59 TList::Class(),
60 AliAnalysisManager::kOutputContainer,
61 "cbaumann_LMEEpp2010_out.root");
62
63 /* AliAnalysisDataContainer *cOutputHist2 =
64 mgr->CreateContainer("cbaumann_lowmass_CF",
65 TList::Class(),
66 AliAnalysisManager::kOutputContainer,
67 "cbaumann_lowmass_CF.root");
68 */
69 AliAnalysisDataContainer *cOutputHist2 =
70 mgr->CreateContainer("cbaumann_LMEEpp2010_CF",
71 TList::Class(),
72 AliAnalysisManager::kOutputContainer,
73 "cbaumann_LMEEpp2010_out.root");
74
75 AliAnalysisDataContainer *cOutputHist3 =
76 mgr->CreateContainer("cbaumann_EventStatPbPb2011",
77 TH1D::Class(),
78 AliAnalysisManager::kOutputContainer,
79 "cbaumann_LMEEpp2010_out.root");
80
81
82 mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
83 mgr->ConnectOutput(task, 0, coutput1 );
84 mgr->ConnectOutput(task, 1, cOutputHist1);
85 mgr->ConnectOutput(task, 2, cOutputHist2);
86 mgr->ConnectOutput(task, 3, cOutputHist3);
87
88 return task;
89}