1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
16 //-----------------------------------------------------------------------
17 // Author : R. Vernet, Consorzio Cometa - Catania (it)
18 //-----------------------------------------------------------------------
20 #ifndef ALIPROTONCORRECTIONTASK_H
21 #define ALIPROTONCORRECTIONTASK_H
23 #include "AliAnalysisTaskSE.h"
33 class AliProtonCorrectionTask : public AliAnalysisTaskSE {
38 kStepReconstructible = 1,
39 kStepReconstructed = 2,
43 AliProtonCorrectionTask();
44 AliProtonCorrectionTask(const Char_t* name);
45 AliProtonCorrectionTask& operator= (const AliProtonCorrectionTask& c);
46 AliProtonCorrectionTask(const AliProtonCorrectionTask& c);
47 virtual ~AliProtonCorrectionTask();
49 // ANALYSIS FRAMEWORK STUFF to loop on data and fill output objects
50 void UserCreateOutputObjects();
51 void UserExec(Option_t *option);
52 void Terminate(Option_t *);
54 // CORRECTION FRAMEWORK RELATED FUNCTIONS
55 void SetCFManagerProtons(AliCFManager* io) {fCFManagerProtons = io;} // global correction manager
56 AliCFManager * GetCFManagerProtons() const {return fCFManagerProtons;} // get corr manager
57 void SetCFManagerAntiProtons(AliCFManager* io) {fCFManagerAntiProtons = io;} // global correction manager
58 AliCFManager * GetCFManagerAntiProtons() const {return fCFManagerAntiProtons;} // get corr manager
59 void SetQAList(TList* list) {fQAHistList = list;}
62 Bool_t IsReadTPCTracks() const {return fReadTPCTracks;}
63 Bool_t IsReadAODData() const {return fReadAODData;}
64 void SetReadTPCTracks (Bool_t flag=kTRUE) {fReadTPCTracks=flag;}
65 void SetReadAODData (Bool_t flag=kTRUE) {fReadAODData=flag;}
68 Double_t Rapidity(Double_t px, Double_t py, Double_t pz);
70 Bool_t fReadTPCTracks; // flag to loop on TPC tracks only
71 Bool_t fReadAODData; // flag for AOD/ESD input files
72 AliCFManager *fCFManagerProtons; // pointer to the CF manager
73 AliCFManager *fCFManagerAntiProtons; // pointer to the CF manager
74 TList *fQAHistList; // list of QA histograms
78 TH1I *fHistEventsProcessed; // simple histo for monitoring the number of events processed
80 ClassDef(AliProtonCorrectionTask,1);