]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ANALYSIS/macros/runTaskNormalization.C
Update master to aliroot
[u/mrichter/AliRoot.git] / ANALYSIS / macros / runTaskNormalization.C
CommitLineData
9b0cb3c3 1
2void runTaskNormalization(const char * incollection,const char * filename = "LHC09b12_7TeV_0.5T_norm.root", Bool_t isMC = 1,Int_t nev =123456789) {
3
4
5 // Load libraries
6 gSystem->Load("libANALYSIS") ;
7 gSystem->Load("libANALYSISalice") ;
8 gSystem->Load("libCORRFW") ;
f7ebc7f2 9 // gSystem->Load("libITSbase") ;
9b0cb3c3 10 gSystem->Load("libPWG0base") ;
11
12
13 // chain
14 TChain* analysisChain = 0;
15 analysisChain = new TChain("esdTree");
16 if (TString(incollection).Contains(".root")){
17 analysisChain->Add(incollection);
18 }
19 else if (TString(incollection).Contains("xml")){
20 TGrid::Connect("alien://");
21 TAlienCollection * coll = TAlienCollection::Open (incollection);
22 while(coll->Next()){
23 analysisChain->Add(TString("alien://")+coll->GetLFN());
24 }
25 } else {
26 ifstream file_collect(incollection);
27 TString line;
28 while (line.ReadLine(file_collect) ) {
29 analysisChain->Add(line.Data());
30 }
31 }
32 analysisChain->GetListOfFiles()->Print();
33
34
35 // Make the analysis manager
36 AliAnalysisManager *mgr = new AliAnalysisManager("TestManager");
37 // mgr->SetDebugLevel(3);
38 // Add ESD handler
39 AliESDInputHandler* esdH = new AliESDInputHandler;
40
41 mgr->SetInputEventHandler(esdH);
42
43 if(isMC) {
44 AliMCEventHandler *mc = new AliMCEventHandler();
45 mc->SetReadTR(kFALSE);
46 mgr->SetMCtruthEventHandler(mc);
47 }
48 // assign simple task
49// gROOT->LoadMacro("AliCollisionNormalization.cxx++g");
50// gROOT->LoadMacro("AliCollisionNormalizationTask.cxx++g");
51 //____________________________________________//
52 // Physics selection
63b6cbd0 53 gROOT->LoadMacro("$(ALICE_ROOT)/OADB/macros/AddTaskPhysicsSelection.C");
9b0cb3c3 54 AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection(isMC,1,!isMC); // Use Physics Selection. Enable computation of BG if is not MC
55 // task->SelectCollisionCandidates(); /// This should be disabled, at least for MC: we need all the events
56 physSelTask->GetPhysicsSelection()->SetBin0Callback("TaskNormalization");
57
58 // assign simple task
f7ebc7f2 59 // AliCollisionNormalizationTask * task = new AliCollisionNormalizationTask("TaskNormalization");
60 // // task->SetMC();
61 // task->SetMC(isMC);
62 // mgr->AddTask(task);
9b0cb3c3 63
64
65
f7ebc7f2 66 // AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
67 // mgr->ConnectInput(task,0,cinput1);
9b0cb3c3 68
69
70
f7ebc7f2 71 // // Attach output
72 // cOutput = mgr->CreateContainer("Norm", TList::Class(), AliAnalysisManager::kOutputContainer,filename);
73 // mgr->ConnectOutput(task, 1, cOutput);
74
75 gROOT->LoadMacro("$(ALICE_ROOT)/ANALYSIS/macros/AddTaskNormalization.C");
76 AliCollisionNormalizationTask * task = AddTaskNormalization(isMC);
9b0cb3c3 77
78 if (!mgr->InitAnalysis()) return;
79
80 mgr->PrintStatus();
81 mgr->StartAnalysis("local",analysisChain,nev);
82
83}