]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/RESONANCES/macros/mini/runPluginProof.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGLF / RESONANCES / macros / mini / runPluginProof.C
1 void runPluginProof
2 (
3    const char *runMode     = "test",
4    
5    Int_t       nmix        = 50,
6    
7    //const char *clusterName = "alice-caf.cern.ch",
8    //const char *dataSet     = "/alice/sim/LHC10d1_000117112",
9    //const char *options     = "esd_mc",
10    //const char *dataSet     = "/alice/sim/LHC11a10b_000139507",
11    //const char *options     = "esd_mc_pbpb",   
12    //const char *dataSet     = "/PWG3/rbala/LHC11a10b_000137748_AOD048",
13    //const char *options     = "aod_mc_pbpb",   
14    
15    const char *clusterName = "skaf.saske.sk",
16    const char *dataSet     = "/alice/sim/LHC10d2_117099",
17    const char *options     = "esd_mc",
18    //const char *dataSet     = "/alice/sim/LHC11a10b_000139314_AOD048",
19    //const char *options     = "aod_mc_pbpb",
20    
21    const char *outName     = "proof.root",
22    const char *macroPath   = ".",
23    const char *testFile    = "file-collections/ESD_LHC10d1.txt",
24    const char *addLibs     = "libEventMixing.so PWGLFresonances.par",
25    const char *addPars     = ""
26 )
27 {
28    //
29    // === PREPARATION ==============================================================================
30    //
31    
32    // this option is not needed when using plugin
33    // gEnv->SetValue("XSec.GSI.DelegProxy","2");
34    
35    // execute the general setup from the apposite macro
36    // it returns also a TString value with the input tree name
37    gROOT->LoadMacro("AnalysisSetupRsnMini.C");
38    TString out = Setup(nmix, options, outName, macroPath);
39    if (out.Length() < 1) return;
40
41    //
42    // === PLUGIN CONFIGURATION =====================================================================
43    //
44
45    // load macro for plugin setup
46    gSystem->AddIncludePath("-I$ALICE_ROOT/include");
47    gROOT->LoadMacro("SetupPlugin.C++g");
48    
49    // set run modalities
50    PluginSetup::runMode      = runMode;
51    PluginSetup::targetAlien  = kFALSE;
52
53    // define inputs
54    PluginSetup::dataSet      = dataSet;
55    PluginSetup::proofTest    = testFile;
56    PluginSetup::proofCluster = clusterName;
57
58    // define additional libraries
59    PluginSetup::addLibs = addLibs;
60    PluginSetup::addPar  = addPars;
61    
62    // additional modalities
63    PluginSetup::aliVersion = "v5-02-19-AN";
64    
65    // create the plugin (need to know if we want tender)
66    if (!PluginSetup::CreatePlugin()) return;
67    
68    PluginSetup::plugin->SetRunMode(runMode);
69    PluginSetup::plugin->SetOverwriteMode();
70    PluginSetup::plugin->SetProofParameter("PROOF_UseMergers", "-1");
71    if (nmix > 0) {::Info("run", "Forcing local"); PluginSetup::plugin->SetProofParameter("PROOF_ForceLocal", "1");}
72    PluginSetup::plugin->SetRootVersionForProof("current");
73    PluginSetup::plugin->SetAliRootMode("default");
74    PluginSetup::plugin->SetClearPackages(kFALSE);
75    
76    //
77    // === ANALYSIS EXECUTION =======================================================================
78    //
79
80    // add plugin to analysis manager
81    AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
82    mgr->SetGridHandler(PluginSetup::plugin);
83    
84    // initialize and start analysis
85    if (!mgr->InitAnalysis()) {
86       ::Error("runPlugin.C", "Failed to init analysis");
87       return;
88    }
89    mgr->PrintStatus();
90    mgr->StartAnalysis("proof");
91 }