]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/EVE/AliHLTEveCalo.h
Merge branch 'histocomp'
[u/mrichter/AliRoot.git] / HLT / EVE / AliHLTEveCalo.h
CommitLineData
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
16class TEveElementList;
17class TEveBoxSet;
18class AliHLTHOMERBlockDesc;
19
20class AliHLTEveCalo : public AliHLTEveBase {
21
22public:
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
40protected :
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 73private:
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