]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/AnalysisMacros/Batch/runAnalysis.C
PROOF-aware version of the analysis framework (Andrei)
[u/mrichter/AliRoot.git] / PWG2 / AnalysisMacros / Batch / runAnalysis.C
1 void runAnalysis() {
2   TStopwatch timer;
3   timer.Start();
4
5   //____________________________________________________//
6   //_____________Setting up ESD.par_____________________//
7   //____________________________________________________//
8   const char* pararchivename1 = "ESD";
9   //////////////////////////////////////////
10   // Libraries required to load
11   //////////////////////////////////////////
12
13   //////////////////////////////////////////////////////////////////
14   // Setup PAR File
15   if (pararchivename1) {
16     char processline[1024];
17     sprintf(processline,".! tar xvzf %s.par",pararchivename1);
18     gROOT->ProcessLine(processline);
19     const char* ocwd = gSystem->WorkingDirectory();
20     gSystem->ChangeDirectory(pararchivename1);
21
22     // check for BUILD.sh and execute
23     if (!gSystem->AccessPathName("PROOF-INF/BUILD.sh")) {
24       printf("*******************************\n");
25       printf("*** Building PAR archive    ***\n");
26       printf("*******************************\n");
27
28       if (gSystem->Exec("PROOF-INF/BUILD.sh")) {
29         Error("runProcess","Cannot Build the PAR Archive! - Abort!");
30         return -1;
31       }
32     }
33     // check for SETUP.C and execute
34     if (!gSystem->AccessPathName("PROOF-INF/SETUP.C")) {
35       printf("*******************************\n");
36       printf("*** Setup PAR archive       ***\n");
37       printf("*******************************\n");
38       gROOT->Macro("PROOF-INF/SETUP.C");
39     }
40     
41     gSystem->ChangeDirectory("../");
42   }
43   gSystem->Load("libVMC.so");
44   gSystem->Load("libESD.so");
45
46   //_____________________________________________________________//
47   //_____________Setting up ANALYSIS_NEW.par_____________________//
48   //_____________________________________________________________//
49   const char* pararchivename2 = "ANALYSIS_NEW";
50   //////////////////////////////////////////
51   // Libraries required to load
52   //////////////////////////////////////////
53
54   //////////////////////////////////////////////////////////////////
55   // Setup PAR File
56   if (pararchivename2) {
57     char processline[1024];
58     sprintf(processline,".! tar xvzf %s.par",pararchivename2);
59     gROOT->ProcessLine(processline);
60     const char* ocwd = gSystem->WorkingDirectory();
61     gSystem->ChangeDirectory(pararchivename2);
62
63     // check for BUILD.sh and execute
64     if (!gSystem->AccessPathName("PROOF-INF/BUILD.sh")) {
65       printf("*******************************\n");
66       printf("*** Building PAR archive    ***\n");
67       printf("*******************************\n");
68
69       if (gSystem->Exec("PROOF-INF/BUILD.sh")) {
70         Error("runProcess","Cannot Build the PAR Archive! - Abort!");
71         return -1;
72       }
73     }
74     // check for SETUP.C and execute
75     if (!gSystem->AccessPathName("PROOF-INF/SETUP.C")) {
76       printf("*******************************\n");
77       printf("*** Setup PAR archive       ***\n");
78       printf("*******************************\n");
79       gROOT->Macro("PROOF-INF/SETUP.C");
80     }
81     
82     gSystem->ChangeDirectory("../");
83   }
84   gSystem->Load("libANALYSIS.so");
85
86   printf("*** Connect to AliEn ***\n");
87   TGrid::Connect("alien://"); 
88
89   gROOT->LoadMacro("AliAnalysisTaskPt.cxx+");  
90   gROOT->LoadMacro("demoBatch.C");
91   demoBatch("pp.xml");
92
93   timer.Stop();
94   timer.Print();
95 }