]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/FORWARD/analysis2/AddTaskCentralMult.C
Minor fixes
[u/mrichter/AliRoot.git] / PWGLF / FORWARD / analysis2 / AddTaskCentralMult.C
CommitLineData
3a08cca0 1/**
0be6c8cd 2 * @file AddTaskCentralMult.C
3a08cca0 3 * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
4010aa17 4 * @date Wed Mar 23 12:13:25 2011
3a08cca0 5 *
4010aa17 6 * @brief
3a08cca0 7 *
8 *
bd6f5206 9 * @ingroup pwglf_forward_scripts_tasks
3a08cca0 10 */
3a08cca0 11
12/**
4010aa17 13 * This is the macro to include the Central multiplicity in a train.
3a08cca0 14 *
c8b1a7db 15 * @param mc If true, assume MC input
16 * @param runNo Pre-set run number
290052e7 17 * @param sys Pre-set collision system
18 * @param sNN Pre-set collition energy
19 * @param field Pre-set magnetic field
20 * @param config Configuration file to use
33438b4c 21 * @param corrs Corrections to use
290052e7 22 *
23 * @return Newly created task
24 *
bd6f5206 25 * @ingroup pwglf_forward_aod
3a08cca0 26 */
0be6c8cd 27AliAnalysisTask*
290052e7 28AddTaskCentralMult(Bool_t mc=false,
8449e3e0 29 ULong_t runNo=0,
290052e7 30 UShort_t sys=0,
31 UShort_t sNN=0,
32 Short_t field=0,
9201c66b 33 const char* config="CentralAODConfig.C",
34 const char* corrs=0)
3a08cca0 35{
56236b95 36 // --- Load libraries ----------------------------------------------
bd6f5206 37 gROOT->LoadClass("AliAODForwardMult", "libPWGLFforward2");
3a08cca0 38
56236b95 39 // --- Get analysis manager ----------------------------------------
4010aa17 40 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
41 if (!mgr) {
0be6c8cd 42 Error("AddTaskCentralMult", "No analysis manager to connect to.");
4010aa17 43 return NULL;
44 }
3a08cca0 45
9201c66b 46 // --- Make the task -----------------------------------------------
8e400b14 47 AliCentralMultiplicityTask* task = 0;
48 if (!mc) task = new AliCentralMultiplicityTask("Central");
49 else task = new AliCentralMCMultiplicityTask("Central");
9201c66b 50 task->Configure(config);
9201c66b 51
52 // --- Set optional corrections path -------------------------------
8449e3e0 53 AliCentralCorrectionManager& cm =
54 AliCentralCorrectionManager::Instance();
55 if (corrs && corrs[0] != '\0') cm.SetPrefix(corrs);
9201c66b 56
57 // --- Prime the corrections ---------------------------------------
2a276c75 58 if(sys>0 && sNN > 0) {
8449e3e0 59 cm.Init(runNo, sys, sNN, field);
9201c66b 60 if (!cm.HasSecondaryCorrection())
2a276c75 61 Fatal("AddTaskCentralMult", "No secondary correction defined!");
9201c66b 62 if (!cm.HasAcceptanceCorrection())
2a276c75 63 Fatal("AddTaskCentralMult", "No acceptance correction defined!");
64 }
8e400b14 65
4010aa17 66 // --- Make the output container and connect it --------------------
c8b1a7db 67 task->Connect(0,0);
4010aa17 68
3a08cca0 69 return task;
70}
3a08cca0 71//
72// EOF
4010aa17 73//