]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG0/dNdEta/runMultiplicitySelector.C
EMCAL geometry can be created independently form anything now
[u/mrichter/AliRoot.git] / PWG0 / dNdEta / runMultiplicitySelector.C
1 /* $Id$ */
2
3 //
4 // script to run the AliMultiplicityESDSelector
5 //
6
7 #include "../CreateESDChain.C"
8 #include "../PWG0Helper.C"
9
10 void runMultiplicitySelector(Char_t* data, Int_t nRuns=20, Int_t offset=0, Bool_t aMC = kFALSE, Bool_t aDebug = kFALSE, Bool_t aProof = kFALSE)
11 {
12   if (aProof)
13     connectProof("proof01@lxb6046");
14
15   TString libraries("libEG;libGeom;libESD;libPWG0base");
16   TString packages("PWG0base");
17
18   if (aMC != kFALSE)
19   {
20     libraries += ";libVMC;libMinuit;libSTEER;libPWG0dep;libEVGEN;libFASTSIM;libmicrocern;libpdf;libpythia6;libEGPythia6;libAliPythia6";
21     packages += ";PWG0dep";
22   }
23
24   if (!prepareQuery(libraries, packages, kTRUE))
25     return;
26
27   gROOT->ProcessLine(".L CreateCuts.C");
28   gROOT->ProcessLine(".L drawPlots.C");
29
30   // selection of esd tracks
31   AliESDtrackCuts* esdTrackCuts = CreateTrackCuts();
32   if (!esdTrackCuts)
33   {
34     printf("ERROR: esdTrackCuts could not be created\n");
35     return;
36   }
37
38   TList inputList;
39   inputList.Add(esdTrackCuts);
40
41   TChain* chain = CreateESDChain(data, nRuns, offset);
42
43   TString selectorName = ((aMC == kFALSE) ? "AliMultiplicityESDSelector" : "AliMultiplicityMCSelector");
44   AliLog::SetClassDebugLevel(selectorName, AliLog::kInfo);
45
46   selectorName += ".cxx+";
47
48   if (aDebug != kFALSE)
49     selectorName += "g";
50
51   Int_t result = executeQuery(chain, &inputList, selectorName);
52
53   if (result != 0)
54   {
55     printf("ERROR: Executing process failed with %d.\n", result);
56     return;
57   }
58
59   // and draw it
60   if (aMC != kFALSE)
61     MultiplicityMC();
62   else
63     MultiplicityESD();
64 }
65