]>
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 Base class for the HLT eve calorimeter display elements | |
8 | ||
9 | ||
10 | #ifndef ALIHLTEVECALO_H | |
11 | #define ALIHLTEVECALO_H | |
12 | ||
13 | #include "AliHLTEveBase.h" | |
14 | #include "TString.h" | |
15 | ||
16 | class TEveElementList; | |
17 | class TEveBoxSet; | |
18 | class AliHLTHOMERBlockDesc; | |
19 | ||
20 | class AliHLTEveCalo : public AliHLTEveBase { | |
21 | ||
22 | public: | |
23 | ||
24 | /** Constructor **/ | |
25 | AliHLTEveCalo(Int_t nm, TString name); | |
26 | ||
27 | /** Destructor **/ | |
28 | ~AliHLTEveCalo(); | |
29 | ||
30 | void ProcessBlock(AliHLTHOMERBlockDesc * block); | |
31 | ||
32 | /** inherited from AliHLTEveBase */ | |
33 | void UpdateElements(); | |
34 | ||
35 | /** inherited from AliHLTEveBase */ | |
36 | void ResetElements(); | |
37 | ||
38 | ||
39 | ||
40 | protected : | |
41 | ||
42 | /** Create the elementlist */ | |
43 | virtual TEveElementList * CreateElementList() = 0; | |
44 | ||
45 | /** Add clusters boxset to eve display */ | |
46 | virtual void AddClusters(Float_t * pos, Int_t module, Float_t energy) = 0; | |
47 | ||
48 | /** Add digits boxset to eve display */ | |
49 | virtual void AddDigits(UShort_t fX, UShort_t fZ, Int_t module, Float_t energy) = 0; | |
50 | ||
51 | /** Process clusters block */ | |
52 | void ProcessClusters(AliHLTHOMERBlockDesc * block); | |
53 | ||
54 | /** Process digits block */ | |
55 | void ProcessDigits(AliHLTHOMERBlockDesc * block); | |
56 | ||
57 | /** Process histogram block */ | |
58 | void ProcessHistogram(AliHLTHOMERBlockDesc * block ); | |
33791895 | 59 | |
e77bc5e0 | 60 | /** Process and draw histograms */ |
61 | void AddHistogramsToCanvas(AliHLTHOMERBlockDesc * block, TCanvas * canvas, Int_t &cdCount ); | |
62 | ||
63 | Int_t GetPadNumber(TString name); | |
64 | ||
33791895 | 65 | TEveBoxSet * fBoxSet; //Boxset for clusters and digist |
66 | ||
67 | TEveElementList * fElementList; //Element list to contain the clusters | |
68 | ||
69 | const Int_t fNModules; //Number of modules in calorimeter | |
70 | ||
71 | ||
e77bc5e0 | 72 | |
33791895 | 73 | private: |
74 | ||
75 | /** default constructor prohibited */ | |
76 | AliHLTEveCalo(); | |
77 | /** copy constructor prohibited */ | |
78 | AliHLTEveCalo(const AliHLTEveCalo&); | |
79 | /** assignment operator prohibited */ | |
80 | AliHLTEveCalo& operator = (const AliHLTEveCalo &); | |
81 | ||
82 | TString fName; //PHOS or EMCAL | |
3d600a8b | 83 | |
84 | TString * fPadTitles; | |
e77bc5e0 | 85 | |
33791895 | 86 | ClassDef(AliHLTEveCalo, 0); |
87 | }; | |
88 | ||
89 | #endif |