]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/SPECTRA/macros/configProtonCorrectionAnalysisTask.C
Adding the possibility to use or not the online/offline trigger in the data analysis
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / macros / configProtonCorrectionAnalysisTask.C
1 //______________________________________________________
2 AliProtonCorrectionAnalysisTask* GetAliProtonCorrectionAnalysisTask(const char* mode = "ESD",const char* analysisType  = "Hybrid",const char* pidMode = "Bayesian",Bool_t fIsOn_AliProtonAbsorptionCorrection=kTRUE, Bool_t fIsOn_AliProtonFeedDownAnalysis=kTRUE,Bool_t fIsOn_AliProtonSpectraCorrection=kTRUE) {
3   AliProtonCorrectionAnalysisTask *taskProtons = new AliProtonCorrectionAnalysisTask("TaskProtonsProtonCorrection");
4   if(fIsOn_AliProtonAbsorptionCorrection||fIsOn_AliProtonFeedDownAnalysis||fIsOn_AliProtonSpectraCorrection) {
5     gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonAnalysisBaseObject.C"); 
6     AliProtonAnalysisBase *baseAnalysis = GetProtonAnalysisBaseObject(mode,kTRUE,analysisType,pidMode,kTRUE,kTRUE);
7     taskProtons->SetBaseAnalysis(baseAnalysis);
8   }     
9   else
10     return 0x0;
11   if(fIsOn_AliProtonAbsorptionCorrection) {
12     AliProtonAbsorptionCorrection* absorptioncorrection=new AliProtonAbsorptionCorrection();
13     taskProtons->SetAnalysisObjectAbsorptionCorrection(absorptioncorrection);
14   }
15   if(fIsOn_AliProtonFeedDownAnalysis) {
16     gROOT->LoadMacro("$ALICE_ROOT/PWG2/SPECTRA/macros/configProtonFeedDownAnalysis.C");
17     AliProtonFeedDownAnalysis* analysisFeedDown = GetProtonFeedDownAnalysisObject();
18     taskProtons->SetAnalysisObjectFeedDown(analysisFeedDown);
19   }     
20   if(fIsOn_AliProtonSpectraCorrection) {
21     AliProtonSpectraCorrection* spectracorrection=new AliProtonSpectraCorrection();
22     taskProtons->SetAnalysisObjectSpectraCorrection(spectracorrection);
23   }
24   return taskProtons;
25 }
26
27