ec758cf50be76840526619eb017134a27bc2f09a
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / macros / Proof / runProof.C
1 void runProof(int dataType=0, const char *dataSource="ESD82XX_30K.txt") {
2   // Run on PROOF with data from:
3   // dataType =
4   // 0 - a local file list
5   // 1 - a PROOF dataset
6   // 
7   // for dataTpye = 0
8   // dataSource is the list file name
9   // for dataType = 1
10   // dataSource is the PROOF dataset name
11
12   TStopwatch timer;
13   timer.Start();
14
15   printf("*** Connect to PROOF ***\n");
16   // ****
17   // You have to change this to Your own username !!!!
18   TProof::Open("akisiel@lxb6046.cern.ch");
19   //
20   // ****
21
22   gProof->UploadPackage("STEERBase.par");
23   gProof->EnablePackage("STEERBase");
24   gProof->UploadPackage("ESD.par");
25   gProof->EnablePackage("ESD");
26   gProof->UploadPackage("AOD.par");
27   gProof->EnablePackage("AOD");
28   gProof->UploadPackage("ANALYSIS.par");
29   gProof->EnablePackage("ANALYSIS");
30   gProof->UploadPackage("ANALYSISalice.par");
31   gProof->EnablePackage("ANALYSISalice");
32   gProof->UploadPackage("PWG2AOD.par");
33   gProof->EnablePackage("PWG2AOD");
34   gProof->UploadPackage("PWG2femtoscopy.par");
35   gProof->EnablePackage("PWG2femtoscopy");
36   gProof->UploadPackage("PWG2femtoscopyUser.par");
37   gProof->EnablePackage("PWG2femtoscopyUser");
38   gSystem->SetIncludePath("-I$ROOTSYS/include -I./PWG2femtoscopy/FEMTOSCOPY/AliFemto -I./PWG2femtoscopyUser/FEMTOSCOPY/AliFemtoUser -I./ESD -I./AOD -I./ANALYSIS -I./PWG2AOD/AOD");
39   gProof->AddIncludePath("./PWG2AOD/AOD");
40   gProof->AddIncludePath("./PWG2femtoscopy/FEMTOSCOPY/AliFemto");
41   gProof->AddIncludePath("./PWG2femtoscopyUser/FEMTOSCOPY/AliFemtoUser");
42
43   gProof->Load("ConfigFemtoAnalysis.C++g");
44   //  gProof->Load("AliAnalysisTaskFemto.cxx++g");
45
46   TChain *chain = 0x0;
47
48   if (dataType == 0) {
49     gROOT->LoadMacro("CreateESDChain.C");
50     chain = CreateESDChain("ESD82XX_30K.txt",200);
51   }
52
53   //____________________________________________//
54   // Make the analysis manager
55   AliAnalysisManager *mgr = new AliAnalysisManager("TestManager");
56   AliESDInputHandler* esdH = new AliESDInputHandler;
57   esdH->SetInactiveBranches("FMD CaloCluster");
58   mgr->SetInputEventHandler(esdH);  
59   //____________________________________________//
60   // 1st Pt task
61   AliAnalysisTaskFemto *task1 = new AliAnalysisTaskFemto("TaskFemto");
62
63   mgr->AddTask(task1);
64
65   // Create containers for input/output
66   AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer();
67   AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("clist1", TList::Class(),AliAnalysisManager::kOutputContainer,"Femto.ESD.root");
68   
69   //____________________________________________//
70   mgr->ConnectInput(task1,0,cinput1);
71   mgr->ConnectOutput(task1,0,coutput1);
72
73   if (!mgr->InitAnalysis()) return;
74   mgr->PrintStatus();
75   if (dataType == 0)
76     mgr->StartAnalysis("proof",chain);
77   else if (dataType == 1)
78     mgr->StartAnalysis("proof",dataSource, -1, 0);
79
80   timer.Stop();
81   timer.Print();
82 }
83