]>
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; |
fd2adb88 | 22 | class AliESDEvent; |
33791895 | 23 | |
24 | class AliHLTEveHLT : public AliHLTEveBase { | |
25 | ||
26 | public: | |
27 | ||
28 | /** Constructor **/ | |
29 | AliHLTEveHLT(); | |
30 | ||
31 | /** Destructor **/ | |
32 | ~AliHLTEveHLT(); | |
33 | ||
34 | /** Inherited from AliHLTEveBase */ | |
35 | void ProcessBlock(AliHLTHOMERBlockDesc * block); | |
36 | ||
37 | /** inherited from AliHLTEveBase */ | |
38 | void UpdateElements(); | |
39 | ||
40 | /** inherited from AliHLTEveBase */ | |
41 | void ResetElements(); | |
42 | ||
fd2adb88 | 43 | void ProcessEsdEvent( AliESDEvent * esd); |
44 | ||
45 | void DestroyOldTrackList(); | |
46 | static void * DestroyGarbage(void * arg); | |
47 | ||
33791895 | 48 | private: |
49 | ||
50 | /** copy constructor prohibited */ | |
51 | AliHLTEveHLT(const AliHLTEveHLT&); | |
52 | /** assignment operator prohibited */ | |
53 | AliHLTEveHLT& operator = (const AliHLTEveHLT ); | |
54 | ||
55 | /*Create the pointset for the display */ | |
56 | void CreateTrackList(); | |
57 | ||
58 | // Make a standard track representation and put it into given container. | |
59 | // Choose which parameters to use a track's starting point. | |
60 | // If gkFixFailedITSExtr is TRUE (FALSE by default) and | |
61 | // if ITS refit failed, take track parameters at inner TPC radius. | |
62 | AliEveTrack * MakeEsdTrack(AliESDtrack *at, TEveTrackList* cont); | |
63 | ||
64 | // Process the ESD block and call the functions necessary to fill the tracklist | |
65 | void ProcessEsdBlock( AliHLTHOMERBlockDesc * block, TEveTrackList * cont ); | |
66 | ||
fd2adb88 | 67 | // Process ESD event |
68 | void ProcessEsdEvent( AliESDEvent * esd, TEveTrackList * cont); | |
69 | ||
33791895 | 70 | //Set up the track propagator |
71 | void SetUpTrackPropagator(TEveTrackPropagator* trkProp, Float_t magF, Float_t maxR); | |
72 | ||
73 | //Create a title for the track | |
74 | TString CreateTrackTitle(AliESDtrack* t); | |
75 | ||
bc1a13f1 | 76 | ///Create the pointset to display primary vertex |
77 | void CreateVertexPointSet(); | |
78 | ||
33791895 | 79 | //Add track param to AliEveTrack |
80 | void AddTrackParamToTrack(AliEveTrack* track, const AliExternalTrackParam* tp); | |
81 | ||
82 | //Process histogram block | |
83 | void ProcessHistograms(AliHLTHOMERBlockDesc * block, TCanvas * canvas); | |
84 | ||
c8fc4838 | 85 | //Process trigger block |
86 | void ProcessGlobalTrigger(AliHLTHOMERBlockDesc * block); | |
87 | ||
353f10b3 | 88 | //Create tpc qa histograms |
89 | void CreateHistograms(); | |
90 | ||
91 | //Draw tpc qa histograms | |
92 | void DrawHistograms(); | |
93 | ||
94 | ||
fd2adb88 | 95 | |
33791895 | 96 | Bool_t fTrueField; //Use true field? |
97 | Bool_t fUseIpOnFailedITS; // Use IP as origin if ITS refit fails? | |
98 | Bool_t fUseRkStepper; // Use Runge Kutta for something something? | |
99 | ||
100 | TEveTrackList * fTrackList; //Eve tracklist | |
fd2adb88 | 101 | TEveTrackList * fOldTrackList; //Eve tracklist |
bc1a13f1 | 102 | TEvePointSet * fPointSetVertex; //Display primary vertex |
33791895 | 103 | |
353f10b3 | 104 | TCanvas * fTrCanvas; //Canvas for track qa histos |
105 | ||
106 | TH1F * fHistPt; //Pt histo | |
107 | TH1F * fHistP; //p histo | |
108 | TH1F * fHistEta; //Eta histo | |
109 | TH1F * fHistTheta; //Theta histo | |
110 | TH1F * fHistPhi; //Phi histo | |
111 | TH1F * fHistnClusters;//nClusters histo | |
112 | TH1F * fHistMult; //Mult histo | |
33791895 | 113 | |
114 | ClassDef(AliHLTEveHLT, 0); | |
115 | }; | |
116 | ||
117 | #endif |