3 #ifndef ALIANALYSISTASKHLTTPC_H
4 #define ALIANALYSISTASKHLTTPC_H
6 //* This file is property of and copyright by the ALICE HLT Project *
7 //* ALICE Experiment at CERN, All rights reserved. *
8 //* See cxx source for full Copyright notice *
10 /** @file AliAnalysisTaskHLTTPC.h
11 @author Kalliopi Kanaki
13 @brief An analysis task to compare the offline and HLT esd trees
16 // forward declarations
25 #include "AliAnalysisTaskSE.h"
27 class AliAnalysisTaskHLTTPC : public AliAnalysisTaskSE {
30 AliAnalysisTaskHLTTPC(const char *name);
31 virtual ~AliAnalysisTaskHLTTPC() {}
32 virtual void UserCreateOutputObjects();
33 virtual void UserExec(Option_t *option);
34 virtual void Terminate(Option_t *);
35 //virtual Bool_t Notify();
36 virtual void NotifyRun();
40 /** copy constructor */
41 AliAnalysisTaskHLTTPC(const AliAnalysisTaskHLTTPC&);
42 /** assignment operator */
43 AliAnalysisTaskHLTTPC& operator=(const AliAnalysisTaskHLTTPC&);
45 AliESDRun *fESDRun; //!
48 TH1F *fHistTrigger; //! trigger counters
49 TH1F *fHistHLTTrigger; //! HLT online trigger counters
51 TH1F *fHistOfflTrkDCA; //! Offline track DCA to beam line
52 TH1F *fHistOfflTrkDCATrig; //! Offline track DCA for triggered events
53 TH1F *fHistOfflTrkDCANoTrig; //! Offline track DCA for not triggered evts
55 TH1F *fHistOnlTrkDCA; //! Online track DCA
56 TH1F *fHistOnlTrkDCATrig; //!
58 TH1F *fHistOfflTrkNcls; //! #clusters for offline tracks
59 TH1F *fHistOfflTrkNclsTrig; //! #clusters for offline tracks, triggered evts
60 TH1F *fHistOfflTrkNclsNoTrig; //! #clusters not triggered
62 TH1F *fHistOnlTrkNcls; //! #clusters for online tracks
63 TH1F *fHistOnlTrkNclsTrig; //!
65 TH1F *fHistOfflTrkDCANoTrigNclsCut1; //! with cut on #clusters>=60
66 TH1F *fHistOfflTrkDCANoTrigNclsCut2; //! with cut on #clusters<60
68 TH1F *fHistOfflTrkP; //! momentum for offline tracks
69 TH1F *fHistOfflTrkPTrig; //! momentum for triggered events
70 TH1F *fHistOfflTrkPNoTrig; //! momentum for not triggered events
71 TH1F *fHistOnlTrkP; //! momentum for online tracks
73 TH1F *fHistOfflResPtInv; //! resolution on 1/pt for offline tracks
74 TH1F *fHistOnlResPtInv; //! resoltion on 1/pt for online tracks
76 TH1F *fHistOffldEdx; //!
77 TH1F *fHistOnldEdx; //!
79 TH2F *fHistOffldEdxVsP; //! dE/dx versus momentum for offline TPC tracks
80 TH2F *fHistOnldEdxVsP; //! dE/dx versus momentum for online TPC tracks
82 TH1F *fHistOffldZ; //! resolution on z
83 TH1F *fHistOnldZ; //! resolution on z
85 TH1F *fHistOffldX; //! resolution on r
86 TH1F *fHistOnldX; //! resolution on r
88 TH1F *fHistOfflPhi; //! resolution on azimuthal angle
89 TH1F *fHistOnlPhi; //! resolution on azimuthal angle
91 TH1F *fHistOfflTheta; //! resolution on polar angle
92 TH1F *fHistOnlTheta; //! resolution on polar angle
94 TH2F *fHistOnlDZ; //! online trigger tracks distance to beam and Z to IP
95 TH2F *fHistOfflDZ; //! offline tracks distance to beam and Z to IP
96 TH2F *fHistOfflDZTrig; //!
97 TH2F *fHistOfflDZNoTrig; //!
100 TObjArray *fTrgClsArray;
103 Int_t fNtracksThruZ0; //#tracks thru central electrode
104 Int_t fNtracksThruZ0Trig; //#tracks thru central electrode being triggered
107 static const Float_t fgkPhiMin[5];
108 static const Float_t fgkPhiMax[5];
109 static const Float_t fgkEtaMin;
110 static const Float_t fgkEtaMax;
111 static const Float_t fgkNormX[5];
112 static const Float_t fgkNormY[5];
113 static const Float_t fgkInitPosX[5];
114 static const Float_t fgkInitPosY[5];
116 ClassDef(AliAnalysisTaskHLTTPC, 0); // example of analysis