]>
Commit | Line | Data |
---|---|---|
33791895 | 1 | /* This file is property of and copyright by the ALICE HLT Project * |
2 | * ALICE Experiment at CERN, All rights reserved. * | |
3 | * See cxx source for full Copyright notice */ | |
4 | ||
5 | /// @file AliHLTEveCalo.h | |
6 | /// @author Svein Lindal | |
7 | /// @brief HLT Instance of Eve display processor | |
8 | // Author: Svein Lindal <slindal@fys.uio.no> | |
9 | ||
10 | #ifndef ALIHLTEVEHLT_H | |
11 | #define ALIHLTEVEHLT_H | |
12 | ||
13 | #include "AliHLTEveBase.h" | |
14 | class TEvePointSet; | |
15 | class AliESDtrack; | |
16 | class AliEveTrack; | |
17 | class TEveTrackList; | |
18 | class TEveTrackPropagator; | |
19 | class TString; | |
20 | class AliExternalTrackParam; | |
353f10b3 | 21 | class TH1F; |
f1a55ef4 | 22 | class TH1; |
fd2adb88 | 23 | class AliESDEvent; |
33791895 | 24 | |
25 | class AliHLTEveHLT : public AliHLTEveBase { | |
26 | ||
27 | public: | |
28 | ||
29 | /** Constructor **/ | |
30 | AliHLTEveHLT(); | |
31 | ||
32 | /** Destructor **/ | |
33 | ~AliHLTEveHLT(); | |
34 | ||
35 | /** Inherited from AliHLTEveBase */ | |
36 | void ProcessBlock(AliHLTHOMERBlockDesc * block); | |
37 | ||
38 | /** inherited from AliHLTEveBase */ | |
39 | void UpdateElements(); | |
40 | ||
41 | /** inherited from AliHLTEveBase */ | |
42 | void ResetElements(); | |
43 | ||
fd2adb88 | 44 | void ProcessEsdEvent( AliESDEvent * esd); |
45 | ||
46 | void DestroyOldTrackList(); | |
47 | static void * DestroyGarbage(void * arg); | |
48 | ||
33791895 | 49 | private: |
50 | ||
51 | /** copy constructor prohibited */ | |
52 | AliHLTEveHLT(const AliHLTEveHLT&); | |
53 | /** assignment operator prohibited */ | |
54 | AliHLTEveHLT& operator = (const AliHLTEveHLT ); | |
55 | ||
56 | /*Create the pointset for the display */ | |
57 | void CreateTrackList(); | |
58 | ||
59 | // Make a standard track representation and put it into given container. | |
60 | // Choose which parameters to use a track's starting point. | |
61 | // If gkFixFailedITSExtr is TRUE (FALSE by default) and | |
62 | // if ITS refit failed, take track parameters at inner TPC radius. | |
63 | AliEveTrack * MakeEsdTrack(AliESDtrack *at, TEveTrackList* cont); | |
64 | ||
65 | // Process the ESD block and call the functions necessary to fill the tracklist | |
66 | void ProcessEsdBlock( AliHLTHOMERBlockDesc * block, TEveTrackList * cont ); | |
67 | ||
fd2adb88 | 68 | // Process ESD event |
69 | void ProcessEsdEvent( AliESDEvent * esd, TEveTrackList * cont); | |
70 | ||
33791895 | 71 | //Set up the track propagator |
72 | void SetUpTrackPropagator(TEveTrackPropagator* trkProp, Float_t magF, Float_t maxR); | |
73 | ||
74 | //Create a title for the track | |
75 | TString CreateTrackTitle(AliESDtrack* t); | |
76 | ||
bc1a13f1 | 77 | ///Create the pointset to display primary vertex |
78 | void CreateVertexPointSet(); | |
79 | ||
33791895 | 80 | //Add track param to AliEveTrack |
81 | void AddTrackParamToTrack(AliEveTrack* track, const AliExternalTrackParam* tp); | |
82 | ||
83 | //Process histogram block | |
84 | void ProcessHistograms(AliHLTHOMERBlockDesc * block, TCanvas * canvas); | |
85 | ||
c8fc4838 | 86 | //Process trigger block |
87 | void ProcessGlobalTrigger(AliHLTHOMERBlockDesc * block); | |
88 | ||
353f10b3 | 89 | //Create tpc qa histograms |
90 | void CreateHistograms(); | |
91 | ||
92 | //Draw tpc qa histograms | |
93 | void DrawHistograms(); | |
94 | ||
f1a55ef4 | 95 | void AddHistogramToCanvas(TH1 * histogram, TCanvas * canvas, Int_t &cdCount); |
fd2adb88 | 96 | |
33791895 | 97 | Bool_t fTrueField; //Use true field? |
98 | Bool_t fUseIpOnFailedITS; // Use IP as origin if ITS refit fails? | |
99 | Bool_t fUseRkStepper; // Use Runge Kutta for something something? | |
100 | ||
101 | TEveTrackList * fTrackList; //Eve tracklist | |
fd2adb88 | 102 | TEveTrackList * fOldTrackList; //Eve tracklist |
bc1a13f1 | 103 | TEvePointSet * fPointSetVertex; //Display primary vertex |
33791895 | 104 | |
353f10b3 | 105 | TCanvas * fTrCanvas; //Canvas for track qa histos |
f1a55ef4 | 106 | TCanvas * fVertexCanvas; //Other canvas |
107 | ||
353f10b3 | 108 | TH1F * fHistEta; //Eta histo |
353f10b3 | 109 | TH1F * fHistPhi; //Phi histo |
110 | TH1F * fHistnClusters;//nClusters histo | |
111 | TH1F * fHistMult; //Mult histo | |
4883ef27 | 112 | TH1F * fHistDCAr; //DCA r histo |
f1a55ef4 | 113 | Int_t fTrCount; |
114 | Int_t fVCount; | |
115 | ||
33791895 | 116 | ClassDef(AliHLTEveHLT, 0); |
117 | }; | |
118 | ||
119 | #endif |