ROOT logo
// ======================================
// ===== ALIEN PLUGIN CONFIGURATION =====
// ======================================
//
// This macro configures an AliEn plugin in order to launch a job
// which runs a task from the resonance package on a list of runs
// which are processed separately.
//
// All the possible configuration parameters are arguments
// of the macro function, even if most of them have default
// values which the user will rarely change.
//
// The macro tries to synchronize some output names, using
// a unique name ('analysisName') to define all files that
// describe the output, the analysis macros/executables/JDL.
//
// Since the run mode can be more variable than the config
// it is not set here, but it is required in the run macro
// which uses the plugin.
//
// Considered that the arguments are many, they are explained
// inside the list of arguments in the macro definition.
// In ALL cases where a list of strings must be provided, its
// elements must be separated by a blank character.
//
AliAnalysisAlien* PluginByRunProof
(
   // all parameters which could often be customized
   // are placed at the beginning of the macro, while
   // all others can stay there with their default values:
   // -- analysisName   --> common name used for naming all analysis related files
   // -- dataset        --> dataset to be processed
   // -- testFile       --> used for test mode only
   // -- clusterName    --> PROOF cluster to be used
   const char *dataSet,
   const char *testFile,
   const char *clusterName,
   
   // -- proofReset     --> require or not the PROOF reset
   // -- alirootMode    --> the way AliROOT library are loaded
   // -- clearPack      --> to clear or not the PAR libraries
   Bool_t      proofReset  = kFALSE,
   const char *alirootMode = "default",
   Bool_t      clearPack   = kFALSE,

   // standard package versions
   const char *rootVersion    = "v5-28-00a",
   const char *aliVersion     = "v4-21-17a-AN"
)
{
   // create plugin object
   // with specifications which apply to a run-by-run execution
   // this creates by default also the job structure for merging
   AliAnalysisAlien *plugin = new AliAnalysisAlien;

   // package versions
   plugin->SetROOTVersion(rootVersion);
   plugin->SetAliROOTVersion(aliVersion);

   // additional libraries/includes
   //plugin->SetAdditionalLibs("libTENDER.so TENDERSupplies.par libEventMixing.so libPWG2resonances.so");
   plugin->SetAdditionalLibs("libEventMixing.so PWG2resonances.par");
   
   // PROOF-specific settings
   plugin->SetProofCluster(clusterName);
   plugin->SetProofDataSet(dataSet);
   plugin->SetProofReset(proofReset);
   plugin->SetProofConnectGrid(kTRUE);
   plugin->SetAliRootMode(alirootMode);
   plugin->SetClearPackages(clearPack);
   plugin->SetFileForTestMode(testFile);

   // the end!
   return plugin;
}
 PluginByRunProof.C:1
 PluginByRunProof.C:2
 PluginByRunProof.C:3
 PluginByRunProof.C:4
 PluginByRunProof.C:5
 PluginByRunProof.C:6
 PluginByRunProof.C:7
 PluginByRunProof.C:8
 PluginByRunProof.C:9
 PluginByRunProof.C:10
 PluginByRunProof.C:11
 PluginByRunProof.C:12
 PluginByRunProof.C:13
 PluginByRunProof.C:14
 PluginByRunProof.C:15
 PluginByRunProof.C:16
 PluginByRunProof.C:17
 PluginByRunProof.C:18
 PluginByRunProof.C:19
 PluginByRunProof.C:20
 PluginByRunProof.C:21
 PluginByRunProof.C:22
 PluginByRunProof.C:23
 PluginByRunProof.C:24
 PluginByRunProof.C:25
 PluginByRunProof.C:26
 PluginByRunProof.C:27
 PluginByRunProof.C:28
 PluginByRunProof.C:29
 PluginByRunProof.C:30
 PluginByRunProof.C:31
 PluginByRunProof.C:32
 PluginByRunProof.C:33
 PluginByRunProof.C:34
 PluginByRunProof.C:35
 PluginByRunProof.C:36
 PluginByRunProof.C:37
 PluginByRunProof.C:38
 PluginByRunProof.C:39
 PluginByRunProof.C:40
 PluginByRunProof.C:41
 PluginByRunProof.C:42
 PluginByRunProof.C:43
 PluginByRunProof.C:44
 PluginByRunProof.C:45
 PluginByRunProof.C:46
 PluginByRunProof.C:47
 PluginByRunProof.C:48
 PluginByRunProof.C:49
 PluginByRunProof.C:50
 PluginByRunProof.C:51
 PluginByRunProof.C:52
 PluginByRunProof.C:53
 PluginByRunProof.C:54
 PluginByRunProof.C:55
 PluginByRunProof.C:56
 PluginByRunProof.C:57
 PluginByRunProof.C:58
 PluginByRunProof.C:59
 PluginByRunProof.C:60
 PluginByRunProof.C:61
 PluginByRunProof.C:62
 PluginByRunProof.C:63
 PluginByRunProof.C:64
 PluginByRunProof.C:65
 PluginByRunProof.C:66
 PluginByRunProof.C:67
 PluginByRunProof.C:68
 PluginByRunProof.C:69
 PluginByRunProof.C:70
 PluginByRunProof.C:71
 PluginByRunProof.C:72
 PluginByRunProof.C:73
 PluginByRunProof.C:74
 PluginByRunProof.C:75
 PluginByRunProof.C:76