]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/PilotTrain/runPilot.C
Updating file for nightly test, with new DIP names, and new DCS period.
[u/mrichter/AliRoot.git] / PWG1 / PilotTrain / runPilot.C
1 void runPilot() {
2   TStopwatch timer;
3   timer.Start();
4   gSystem->SetIncludePath("-I$ROOTSYS/include -I$ALICE_ROOT/include -I$ALICE_ROOT/ITS");
5   gSystem->Load("libANALYSIS.so");
6   gSystem->Load("libANALYSISalice.so");
7   gSystem->Load("libTENDER.so");
8   gSystem->Load("libPWG0base.so");
9   gSystem->Load("libPWG0dep.so");
10   gSystem->Load("libPWG0selectors.so");
11   gSystem->Load("libPWG1.so");
12   gSystem->Load("libPWG2.so");
13   gSystem->Load("libPWG2forward.so");
14   
15  
16
17 //  gROOT->LoadMacro("AliESDInputHandlerRPITS.cxx++g");  
18
19   Bool_t doQAsym        = 1;   // output ok
20   Bool_t doVZERO        = 1;   // output ok but there is a 2nd file
21   Bool_t doVertex       = 1;   // output ok
22   Bool_t doSPD          = 1;   // output ok, needs RP   
23   Bool_t doFMD          = 1;   // output ok
24   Bool_t doTPC          = 1;   // output ok
25   Bool_t doEventStat    = 1;   // output ok
26   Bool_t doSDD          = 1;   // outout ok needs RP
27    //____________________________________________//
28   // Make the analysis manager
29   AliAnalysisManager *mgr = new AliAnalysisManager("TestManager");
30   mgr->SetDebugLevel(2);
31   
32
33   AliInputEventHandler* esdH = new AliESDInputHandlerRP();
34   esdH->SetActiveBranches("ESDfriend");
35   mgr->SetInputEventHandler(esdH);  
36
37   // Chain 
38   TGrid::Connect("alien://");
39   
40   TChain* chain = new TChain("esdTree");
41   chain->AddFile("alien:///alice/data/2009/LHC09d/000104321/ESDs/pass1/09000104321018.10/AliESDs.root");
42   chain->AddFile("alien:///alice/data/2009/LHC09d/000104321/ESDs/pass1/09000104321018.20/AliESDs.root");
43   //
44   // Wagons
45   //
46   //
47   
48   // TPC QA (E. Sicking)
49   //
50   if (doQAsym) {
51       gROOT->LoadMacro("AddTaskQAsym.C");
52       AliAnalysisTaskSE* task1 = AddTaskQAsym();
53       task1->SelectCollisionCandidates();
54   }
55   
56   //
57   // VZERO QA  (C. Cheshkov)
58   //
59   if (doVZERO) {
60       gROOT->LoadMacro("AddTaskVZEROQA.C");
61       AliAnalysisTaskSE* task2 =  AddTaskVZEROQA(0);
62 //      task2->SelectCollisionCandidates();
63   }
64   
65   //
66   // Vertexing (A. Dainese)
67   // 
68   if (doVertex) {
69       gROOT->LoadMacro("$(ALICE_ROOT)/PWG1/macros/AddTaskVertexESD.C");
70       AliAnalysisTaskVertexESD* task3 =  AddTaskVertexESD();
71       task3->SelectCollisionCandidates();
72   }
73   
74   //
75   // SPD (A. Mastroserio)
76   //
77   if (doSPD) {
78       gROOT->LoadMacro("AliAnalysisTaskSPD.cxx++g");
79       gROOT->LoadMacro("AddTaskSPDQA.C");
80       AliAnalysisTaskSE* task4 = AddTaskSPDQA();
81       task4->SelectCollisionCandidates();
82   }
83
84   //
85   // SDD (F. Prino)
86   //
87   if (doSDD) {
88       gROOT->LoadMacro("AddSDDPoints.C");
89       AliAnalysisTaskSE* task5 = AddSDDPoints();
90       task5->SelectCollisionCandidates();
91   }
92   
93   //
94   // FMD (Hans Hjersing Dalsgaard)
95   //
96   if (doFMD) {
97       gROOT->LoadMacro("AddTaskFMD.C");
98       AliAnalysisTaskSE* task6 = AddTaskFMD();
99       task6->SelectCollisionCandidates();
100   }
101   
102   //
103   // TPC (Jacek Otwinowski)
104   //
105   if (doTPC) {
106       gROOT->LoadMacro("$(ALICE_ROOT)/PWG1/TPC/macros/AddTaskPerformanceTPCQA.C");
107       AliPerformanceTask *tpcQA = AddTaskPerformanceTPCQA(kFALSE, kTRUE);
108   }
109
110   //
111   // Event Statistics (Jan Fiete)
112   //
113
114   if (doEventStat) {
115       gROOT->LoadMacro("AddTaskPhysicsSelection.C");
116       AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection();
117       AliPhysicsSelection* physSel = physSelTask->GetPhysicsSelection();
118       physSel->AddBackgroundIdentification(new AliBackgroundSelection());
119   }
120
121   
122   
123   // Init
124   if (!mgr->InitAnalysis()) 
125       mgr->PrintStatus();
126   
127   // Run on dataset
128   mgr->StartAnalysis("local", chain);
129   timer.Stop();
130   timer.Print();
131 }
132