]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ANALYSIS/macros/runTaskNormalization.C
update to MBNoTRD offline trigger class
[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") ;
9 gSystem->Load("libITSbase") ;
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
53 gROOT->LoadMacro("$(ALICE_ROOT)/ANALYSIS/macros/AddTaskPhysicsSelection.C");
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
59 AliCollisionNormalizationTask * task = new AliCollisionNormalizationTask("TaskNormalization");
60 // task->SetMC();
61 task->SetMC(isMC);
62 mgr->AddTask(task);
63
64
65
66 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
67 mgr->ConnectInput(task,0,cinput1);
68
69
70
71 // Attach output
72 cOutput = mgr->CreateContainer("Norm", TList::Class(), AliAnalysisManager::kOutputContainer,filename);
73 mgr->ConnectOutput(task, 1, cOutput);
74
75 if (!mgr->InitAnalysis()) return;
76
77 mgr->PrintStatus();
78 mgr->StartAnalysis("local",analysisChain,nev);
79
80}