1 #ifndef ALIANALYSISTASKPIDRESPONSE_H
2 #define ALIANALYSISTASKPIDRESPONSE_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /* $Id: AliAnalysisTaskPIDResponse.h 43642 2010-09-17 15:50:04Z wiechula $ */
8 // Author: Jens Wiechula, 24/02/2011
10 //==============================================================================
15 //==============================================================================
17 #include <TVectorDfwd.h>
20 #ifndef ALIANALYSISTASKSE_H
21 #include "AliAnalysisTaskSE.h"
27 class AliAnalysisTaskPIDResponse : public AliAnalysisTaskSE {
31 AliAnalysisTaskPIDResponse();
32 AliAnalysisTaskPIDResponse(const char *name);
33 virtual ~AliAnalysisTaskPIDResponse();
35 void SetIsMC(Bool_t isMC=kTRUE) { fIsMC=isMC; }
36 void SetCachePID(Bool_t cachePID) { fCachePID=cachePID; }
37 Bool_t GetCachePID() const { return fCachePID; }
39 virtual void UserCreateOutputObjects();
41 virtual void UserExec(Option_t */*option*/);
43 void SetOADBPath(const char* path) {fOADBPath=path;}
44 const char* GetOADBPath() const { return fOADBPath.Data(); }
45 void SetTuneOnData(Bool_t flag,Int_t recopass){fIsTunedOnData=flag;fRecoPassTuned=recopass;};
46 void SetTuneOnDataMask(Int_t mask){fTunedOnDataMask=mask;};
48 void SetUseTPCEtaCorrection(Bool_t useTPCEtaCorrection) { fUseTPCEtaCorrection = useTPCEtaCorrection; };
49 Bool_t UseTPCEtaCorrection() const { return fUseTPCEtaCorrection; };
51 void SetUseTPCMultiplicityCorrection(Bool_t useMultiplicityCorrection = kTRUE) { fUseTPCMultiplicityCorrection = useMultiplicityCorrection; };
52 Bool_t UseTPCMultiplicityCorrection() const { return fUseTPCMultiplicityCorrection; };
54 void SetSpecialDetectorResponse(const char* det) { fSpecialDetResponse=det; }
55 void SetUserDataRecoPass(Int_t pass){fUserDataRecoPass=pass;};
59 Bool_t fIsMC; // If we run on MC data
60 Bool_t fCachePID; // Cache PID values in transient object
61 TString fOADBPath; // OADB path to use
62 TString fSpecialDetResponse; // Special detector response files for debugging
64 AliPIDResponse *fPIDResponse; //! PID response Handler
65 Int_t fRun; //! current run number
66 Int_t fOldRun; //! current run number
67 Int_t fRecoPass; //! reconstruction pass
69 Bool_t fIsTunedOnData; // flag to tune MC on data (dE/dx)
70 Int_t fTunedOnDataMask; // mask to activate tuning on data on specific detectors
71 Int_t fRecoPassTuned; // Reco pass tuned on data for MC
73 Bool_t fUseTPCEtaCorrection; // Use TPC eta correction
74 Bool_t fUseTPCMultiplicityCorrection; // Use TPC multiplicity correction
75 Int_t fUserDataRecoPass; // forced DATA reco pass
80 AliAnalysisTaskPIDResponse(const AliAnalysisTaskPIDResponse &other);
81 AliAnalysisTaskPIDResponse& operator=(const AliAnalysisTaskPIDResponse &other);
83 ClassDef(AliAnalysisTaskPIDResponse,7) // Task to properly set the PID response functions of all detectors