1 #ifndef ALITOFANALYSISTASKCALIBTREE_H
2 #define ALITOFANALYSISTASKCALIBTREE_H
4 #include "AliAnalysisTaskSE.h"
10 class AliESDtrackCuts;
15 class AliPhysicsSelection;
17 class AliTOFcalibHisto;
27 #define MAXHITS 100000
29 class AliTOFAnalysisTaskCalibTree :
30 public AliAnalysisTaskSE
35 AliTOFAnalysisTaskCalibTree(const Char_t* name = "TOFcalibTree"); // default constructor
36 virtual ~AliTOFAnalysisTaskCalibTree(); // default destructor
38 virtual void UserCreateOutputObjects(); // user create output objects
39 virtual void UserExec(Option_t *); // user exec
42 AliPhysicsSelection *GetEventCuts() const {return fEventCuts;}; // getter
43 AliESDtrackCuts *GetTrackCuts() const {return fTrackCuts;}; // getter
44 AliTOFcalib *GetTOFcalib() const {return fTOFcalib;}; // getter
45 AliTOFT0maker *GetTOFT0maker() const {return fTOFT0maker;}; // getter
46 AliTOFT0v1 *GetTOFT0v1() const {return fTOFT0v1;}; // getter
47 Float_t GetTimeResolution() const {return fTimeResolution;}; // time resolution
48 AliESDpid *GetESDpid() const {return fESDpid;}; // get ESD PID
51 void SetEventSelectionFlag(Bool_t value = kTRUE) {fEventSelectionFlag = value;}; // setter
52 void SetVertexSelectionFlag(Bool_t value = kTRUE) {fVertexSelectionFlag = value;}; // setter
53 void SetVertexCut(Double_t value) {fVertexCut = value;}; // setter
54 void SetDiscardPileupEventFlag(Bool_t value = kTRUE) {fDiscardPileupEventFlag = value;}; // setter
55 void SetPrimaryDCASelectionFlag(Bool_t value = kTRUE) {fPrimaryDCASelectionFlag = value;}; // setter
56 void SetTimeResolution(Float_t value) {fTimeResolution = value;}; // set time resolution
57 void SetCalibrateTOFsignal(Bool_t value = kTRUE) {fCalibrateTOFsignal = value;}; // setter
58 void SetComputeT0TOF(Bool_t value = kTRUE) {fComputeT0TOF = value;}; // setter
59 void SetUseT0TOF(Bool_t value = kTRUE) {fUseT0TOF = value;}; // setter
60 void SetUseLHCClockPhase(Bool_t value = kTRUE) {fUseLHCClockPhase = value;}; // setter
61 void SetSpecificStorageParOffline(Char_t *value) {fSpecificStorageParOffline = value;}; // set specific storage ParOffline
62 void SetSpecificStorageRunParams(Char_t *value) {fSpecificStorageRunParams = value;}; // set specific storage RunParams
66 AliTOFAnalysisTaskCalibTree(const AliTOFAnalysisTaskCalibTree &); // copy constructor
67 AliTOFAnalysisTaskCalibTree &operator=(const AliTOFAnalysisTaskCalibTree &); // operator=
71 Bool_t InitRun(); // init run
72 Bool_t InitEvent(); // init event
73 Bool_t HasTOFMeasurement(AliESDtrack *track); // has TOF
74 Bool_t HasPrimaryDCA(AliESDtrack *track); // has primary DCA
79 Bool_t fInitFlag; // init flag
80 Bool_t fEventSelectionFlag; // event selection flag
81 Bool_t fVertexSelectionFlag; // vertex selection flag
82 Double_t fVertexCut; // vertex cut
83 Bool_t fDiscardPileupEventFlag; // discard pile-up event flag
84 Bool_t fCalibrateTOFsignal; // calibrate TOF signal
85 Bool_t fComputeT0TOF; // compute T0-TOF
86 Bool_t fUseT0TOF; // use T0-TOF
87 Bool_t fUseLHCClockPhase; // use LHC-clock phase
88 Bool_t fPrimaryDCASelectionFlag; // selection of primaries with DCA cut
91 Int_t fRunNumber; // run number
92 AliESDEvent *fESDEvent; // ESD event
93 AliPhysicsSelection *fEventCuts; // event cuts
94 AliESDtrackCuts *fTrackCuts; // track cuts
95 AliESDpid *fESDpid; // ESD PID
96 UInt_t fStartTime; // start time
97 UInt_t fEndTime; // end time
98 UInt_t fElapsedTime; // event time since start
99 Bool_t fIsCollisionCandidate; // is collision candidate
100 Bool_t fHasVertex; // has vertex
101 const AliESDVertex *fVertex; // vertex
104 AliGRPManager *fGRPManager; // GRP manager
105 const AliGRPObject *fGRPObject; // GRP object
108 TString fSpecificStorageParOffline; // specific storage ParOffline
109 TString fSpecificStorageRunParams; // specific storage RunParams
110 Float_t fTimeResolution; // time resolution
111 AliTOFcalib *fTOFcalib; // TOF calib
112 AliTOFT0maker *fTOFT0maker; // TOF-T0 maker
113 AliTOFT0v1 *fTOFT0v1; // TOF-T0 v1
115 // task related stuff
120 Float_t fmomentum[MAXHITS];
121 Float_t flength[MAXHITS];
122 Int_t findex[MAXHITS];
123 Float_t ftime[MAXHITS];
124 Float_t ftot[MAXHITS];
125 Float_t ftexp[MAXHITS];
127 TTree* fOutputTree; // output tree
129 ClassDef(AliTOFAnalysisTaskCalibTree, 2);
132 #endif /* ALIANALYSISTASKTOFCOMPACTCALIB_H */