]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGPP/VZERO/runAnaEPFlatenningProof.C
Reading PMT gains from an external file
[u/mrichter/AliRoot.git] / PWGPP / VZERO / runAnaEPFlatenningProof.C
CommitLineData
345e2385 1void runAnaEPFlatenningProof(Int_t mode = 0, const char *folder = "/alice/data",
2 const char *dataset = "LHC10h_000138396_hlt_clustering",
3 Int_t workers=28,
4 Bool_t usePS = kFALSE,
5 const char *minBias = "CPBI",
6 Int_t firstFile = 0, Int_t lastFile = -1)
7{
8 gSystem->Load("libANALYSIS");
9 gSystem->Load("libANALYSISalice");
10 gSystem->Load("libOADB");
11 gSystem->AddIncludePath("-I$ALICE_ROOT/include ");
12
13 if (mode==0 || mode==2) {
14 // Connect to Proof
15 gEnv->SetValue("XSec.GSI.DelegProxy","2");
16 Char_t *alienuser = gSystem->Getenv("alien_API_USER");
17 cout<<"==> Your AliEn username is: "<<alienuser<<endl;
18
19 TProof *p = TProof::Open(alienuser!=0 ? Form("%s@alice-caf.cern.ch",
20 alienuser) : "alice-caf.cern.ch",
21 workers>0 ? Form("workers=%d",workers) : "");
22
23 gProof->EnablePackage("VO_ALICE@AliRoot::v5-02-16-AN");
24 }
25
26 // Create the analysis manager
27 AliAnalysisManager *mgr = new AliAnalysisManager("EPFlatenningAnalysis");
28
29 AliESDInputHandler* esdH = new AliESDInputHandler();
30 esdH->SetInactiveBranches("FMD AliRawDataErrorLogs CaloClusters Cascades EMCALCells EMCALTrigger ESDfriend.fTracks Kinks MuonTracks TrdTracks");
31 esdH->SetReadFriends(kFALSE);
32 mgr->SetInputEventHandler(esdH);
33
34 // physics and centrality selection
35 if (usePS) {
36 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPhysicsSelection.C");
37 AliPhysicsSelectionTask *physicsSelectionTask = AddTaskPhysicsSelection(kFALSE);
38 }
39
40 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskCentrality.C");
41 AliCentralitySelectionTask *taskCentrality = AddTaskCentrality();
42
43 // Create task
44 if (mode==0 || mode==2) {
45 gProof->Load(Form("%s/AliAnaVZEROEPFlatenning.cxx++g",
46 gSystem->pwd()));
47 }
48 else {
49 gROOT->LoadMacro(Form("%s/AliAnaVZEROEPFlatenning.cxx++g",
50 gSystem->pwd()));
51 }
52 AliAnaVZEROEPFlatenning *task = new AliAnaVZEROEPFlatenning("AliAnaVZEROEPFlatenning");
53 task->SetMBTrigName(minBias);
54 if (usePS) task->SetUsePhysSel(kTRUE);
55 task->SetInput("VZERO.EPFlatenning.PS.LHC11h_000169683_p1_muon_ESDs.root");
56
57 // Add task
58 mgr->AddTask(task);
59
60 // Create containers for input/output
61 AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
62 AliAnalysisDataContainer *coutput =
63 mgr->CreateContainer("coutput", TList::Class(),
64 AliAnalysisManager::kOutputContainer, (!usePS) ? Form("VZERO.EPFlatenning.%s.root",dataset) : Form("VZERO.EPFlatenning.PS.%s.root",dataset));
65
66 // Connect input/output
67 mgr->ConnectInput(task, 0, cinput);
68 mgr->ConnectOutput(task, 1, coutput);
69
70
71 // Enable debug printouts
72 mgr->SetDebugLevel(3);
73
74 if (!mgr->InitAnalysis())
75 return;
76
77 mgr->PrintStatus();
78
79 if (mode==0)
80 mgr->StartAnalysis("proof", Form("%s/%s",folder,dataset));
81 else {
82 TGrid::Connect("alien://");
83 TChain *chain = new TChain("esdTree");
84 TGridResult *res = gGrid->Query(folder,"AliESDs.root");
85 Int_t nFiles = res->GetEntries();
86 if (lastFile < 0) lastFile = nFiles - 1;
87 for(Int_t iFile = firstFile; iFile <= lastFile; ++iFile) {
88 TString filename = res->GetKey(iFile, "turl");
89 if(filename == "") continue;
90 chain->AddFile(filename.Data());
91 }
92 if (mode==2) {
93 gProof->Exec("TGrid::Connect(\"alien://\")",kTRUE);
94 mgr->StartAnalysis("proof", chain);
95 }
96 else
97 mgr->StartAnalysis("local", chain);
98 }
99}
100