1 void runAnaEPFlatenningProof(Int_t mode = 0, const char *folder = "/alice/data",
2 const char *dataset = "LHC10h_000138396_hlt_clustering",
5 const char *minBias = "CPBI",
6 Int_t firstFile = 0, Int_t lastFile = -1)
8 gSystem->Load("libANALYSIS");
9 gSystem->Load("libANALYSISalice");
10 gSystem->Load("libOADB");
11 gSystem->AddIncludePath("-I$ALICE_ROOT/include ");
13 if (mode==0 || mode==2) {
15 gEnv->SetValue("XSec.GSI.DelegProxy","2");
16 Char_t *alienuser = gSystem->Getenv("alien_API_USER");
17 cout<<"==> Your AliEn username is: "<<alienuser<<endl;
19 // TProof::Mgr("alice-caf.cern.ch")->SetROOTVersion("VO_ALICE@ROOT::v5-33-02a");
21 TProof *p = TProof::Open(alienuser!=0 ? Form("%s@alice-caf.cern.ch",
22 alienuser) : "alice-caf.cern.ch",
23 workers>0 ? Form("workers=%d",workers) : "");
25 gProof->EnablePackage("VO_ALICE@AliRoot::v5-03-23-AN");
28 gProof->Exec("TGrid::Connect(\"alien://\")",kTRUE);
29 gSystem->Setenv("OADB_PATH","alien:///alice/cern.ch/user/c/cheshkov/OADB");
30 gProof->Exec("gSystem->Setenv(\"OADB_PATH\",\"alien:///alice/cern.ch/user/c/cheshkov/OADB\")",kTRUE);
34 // Create the analysis manager
35 AliAnalysisManager *mgr = new AliAnalysisManager("EPFlatenningAnalysis");
37 Bool_t esdData = kTRUE;
38 TString tempStr1 = folder;
39 if (tempStr1.Contains("AOD")) esdData = kFALSE;
40 TString tempStr2 = dataset;
41 if (tempStr2.Contains("AOD")) esdData = kFALSE;
43 AliESDInputHandler* esdH = new AliESDInputHandler();
44 esdH->SetInactiveBranches("FMD AliRawDataErrorLogs CaloClusters Cascades EMCALCells EMCALTrigger ESDfriend.fTracks Kinks MuonTracks TrdTracks");
45 esdH->SetReadFriends(kFALSE);
46 mgr->SetInputEventHandler(esdH);
49 AliAODInputHandler* aodH = new AliAODInputHandler();
50 mgr->SetInputEventHandler(aodH);
53 // physics and centrality selection
54 if (esdData && usePS) {
55 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPhysicsSelection.C");
56 AliPhysicsSelectionTask *physicsSelectionTask = AddTaskPhysicsSelection(kFALSE);
59 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskCentrality.C");
60 AliCentralitySelectionTask *taskCentrality = AddTaskCentrality();
63 if (mode==0 || mode==2) {
65 gProof->Load(Form("%s/STEER/STEERBase/AliEventplane.cxx++g",
66 gSystem->Getenv("ALICE_ROOT")));
67 gProof->Load(Form("%s/ANALYSIS/AliVZEROEPSelectionTask.cxx++g",
68 gSystem->Getenv("ALICE_ROOT")));
70 gProof->Load(Form("%s/AliAnaVZEROEPFlatenning.cxx++g",
74 gROOT->LoadMacro(Form("%s/AliAnaVZEROEPFlatenning.cxx++g",
78 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskVZEROEPSelection.C");
79 AliVZEROEPSelectionTask *selTask = AddTaskVZEROEPSelection();
81 AliAnaVZEROEPFlatenning *task = new AliAnaVZEROEPFlatenning("AliAnaVZEROEPFlatenning");
82 task->SetMBTrigName(minBias);
83 if (usePS) task->SetUsePhysSel(kTRUE);
84 task->SetInput("/home/cheshkov/alice/AliRoot/PWGPP/VZERO/save/VZERO.EPFlatenning.PS.LHC11h_000170162_p1_muon_.root");
89 // Create containers for input/output
90 AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
91 AliAnalysisDataContainer *coutput =
92 mgr->CreateContainer("coutput", TList::Class(),
93 AliAnalysisManager::kOutputContainer, (!usePS) ? Form("VZERO.EPFlatenning.%s.root",dataset) : Form("VZERO.EPFlatenning.PS.%s.root",dataset));
95 // Connect input/output
96 mgr->ConnectInput(task, 0, cinput);
97 mgr->ConnectOutput(task, 1, coutput);
99 // Enable debug printouts
100 mgr->SetDebugLevel(3);
102 if (!mgr->InitAnalysis())
108 mgr->StartAnalysis("proof", Form("%s/%s",folder,dataset));
110 TGrid::Connect("alien://");
111 TChain *chain = new TChain("esdTree");
112 TGridResult *res = gGrid->Query(folder,"AliESDs.root");
113 Int_t nFiles = res->GetEntries();
114 if (lastFile < 0) lastFile = nFiles - 1;
115 for(Int_t iFile = firstFile; iFile <= lastFile; ++iFile) {
116 TString filename = res->GetKey(iFile, "turl");
117 if(filename == "") continue;
118 chain->AddFile(filename.Data());
121 gProof->Exec("TGrid::Connect(\"alien://\")",kTRUE);
122 mgr->StartAnalysis("proof", chain);
125 mgr->StartAnalysis("local", chain);