]>
Commit | Line | Data |
---|---|---|
c3e34498 | 1 | //************************************************************************* |
2 | // EMCAL event display | |
3 | // Visualization of an EMCAL super module. | |
4 | // | |
5 | // Author: Magali Estienne (magali.estienne@cern.ch) | |
6 | // June 30 2008 | |
7 | //************************************************************************* | |
8 | ||
9 | #ifndef ALIEVEEMCALSMODULE_H | |
10 | #define ALIEVEEMCALSMODULE_H | |
11 | ||
12 | #include <TEveQuadSet.h> | |
13 | #include <TEveElement.h> | |
14 | #include <TEveBoxSet.h> | |
15 | #include <TEveFrameBox.h> | |
16 | #include <TEvePointSet.h> | |
17 | #include <TClonesArray.h> | |
18 | #include <TTree.h> | |
19 | ||
20 | #include <TGedFrame.h> | |
21 | ||
22 | class AliEveEMCALData; | |
23 | class AliEveEMCALSModuleData; | |
24 | ||
25 | ||
26 | class AliEveEMCALSModule : public TEveElement, | |
27 | public TNamed, | |
ebedba59 | 28 | public TAtt3D |
c3e34498 | 29 | { |
30 | ||
31 | public: | |
32 | AliEveEMCALSModule(Int_t smodid, const Text_t* n, const Text_t* t); | |
33 | ~AliEveEMCALSModule(); | |
34 | ||
35 | void DropData(); | |
36 | ||
c3e34498 | 37 | virtual Bool_t CanEditMainColor() const { return kTRUE; } |
38 | ||
39 | void SetDataSource(AliEveEMCALData *data); | |
40 | void SetSModuleID(Int_t id); | |
ef3891ac | 41 | void SetFrameColor(Color_t col) { fFrameColor = col; }; |
c3e34498 | 42 | AliEveEMCALData* GetData() const { return fEMCALData; }; |
43 | AliEveEMCALSModuleData* GetSModuleData() const; | |
44 | Int_t GetID() const { return fSModuleID; }; | |
c3e34498 | 45 | void SetClusterSize(Int_t size); |
46 | void SetHitSize(Int_t size); | |
47 | ||
48 | void UpdateQuads(); | |
49 | ||
50 | protected: | |
a312477b | 51 | AliEveEMCALData *fEMCALData; // Data for the current event |
52 | AliEveEMCALSModuleData *fEMCALSModuleData; // Data of Super Module (SM) | |
53 | Color_t fFrameColor; // Main coloring | |
a312477b | 54 | Int_t fSModuleID; // Id of super module, 0 to 11 |
55 | TEveQuadSet *fQuadSet; // Digit container | |
56 | TEveQuadSet *fQuadSet2; // Cluster container | |
57 | TEvePointSet *fPointSet; // Hit container | |
a312477b | 58 | Int_t fClusterSize; // Cluster point size |
59 | Int_t fHitSize; // Hit point size | |
a312477b | 60 | Int_t fDebug; // Debug option |
61 | ||
ebedba59 | 62 | static void InitStatics(AliEveEMCALSModuleData* md); |
a312477b | 63 | |
ebedba59 | 64 | static Bool_t fStaticInit; // Flag for static variable initialization. |
65 | static Float_t fgSMBigBBox[3]; // Bounding Box of full SM | |
66 | static Float_t fgSMSmallBBox[3]; // Bounding Box of half SM | |
67 | static TEveFrameBox *fgFrameBigBox; // Frame box per full SM | |
68 | static TEveFrameBox *fgFrameSmallBox; // Frame box per half SM | |
69 | static TEveRGBAPalette *fgFrameDigPalette; // Signal to color mapping for EMCAL digits | |
70 | static TEveRGBAPalette *fgFrameCluPalette; // Signal to color mapping for EMCAL clusters | |
c3e34498 | 71 | |
72 | void SetupColor(Int_t val, UChar_t* pix) const; | |
73 | ||
c3e34498 | 74 | private: |
a312477b | 75 | AliEveEMCALSModule(const AliEveEMCALSModule&); |
c3e34498 | 76 | AliEveEMCALSModule& operator=(const AliEveEMCALSModule&); // Not implemented |
77 | ||
78 | ClassDef(AliEveEMCALSModule, 0); // Base class for TRD hits visualisation | |
79 | }; | |
80 | ||
81 | #endif |