2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
4 /**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
7 * full copyright notice. *
8 **************************************************************************/
9 /////////////////////////////////////////////////////////////////////////
11 // - AliEVE implementation -
12 // Containers for visualisation of TRD data structures
13 // - AliEveTRDHits - visualisation of MC Hits, Clusters (RecPoints)
14 // - AliEveTRDDigits - visualisation of TRD digits
16 // by A.Bercuci (A.Bercuci@gsi.de) Fri Oct 27 2006
17 ///////////////////////////////////////////////////////////////////////
19 #ifndef AliEveTRDData_H
20 #define AliEveTRDData_H
22 #include <TEveQuadSet.h>
23 #include <TEveBoxSet.h>
24 #include <TEvePointSet.h>
26 #include <TGedFrame.h>
28 #include "AliTRDdataArrayI.h"
30 class AliTRDdigitsManager;
31 class AliEveTRDChamber;
33 class AliEveTRDHits : public TEvePointSet
36 AliEveTRDHits(const AliEveTRDHits&); // Not implemented
37 AliEveTRDHits& operator=(const AliEveTRDHits&); // Not implemented
40 AliEveTRDHits(AliEveTRDChamber *p);
42 void PointSelected(Int_t n);
45 AliEveTRDChamber *fParent; // Chaber holding the hits.
47 ClassDef(AliEveTRDHits,1); // Base class for TRD hits visualisation
51 class AliEveTRDHitsEditor : public TGedFrame
54 AliEveTRDHitsEditor(const AliEveTRDHitsEditor&); // Not implemented
55 AliEveTRDHitsEditor& operator=(const AliEveTRDHitsEditor&); // Not implemented
58 AliEveTRDHitsEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
59 UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
60 virtual ~AliEveTRDHitsEditor() {}
62 virtual void SetModel(TObject* obj);
65 AliEveTRDHits* fM; // Model object.
67 ClassDef(AliEveTRDHitsEditor,1); // Editor for AliEveTRDHits.
71 class AliEveTRDDigits : public TEveQuadSet
73 friend class AliEveTRDDigitsEditor;
76 AliEveTRDDigits(const AliEveTRDDigits&); // Not implemented
77 AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
80 AliEveTRDDigits(AliEveTRDChamber *p);
82 void ComputeRepresentation();
83 void Paint(Option_t *opt="");
85 void SetData(AliTRDdigitsManager *digits);
88 AliEveTRDChamber *fParent;
91 TEveBoxSet fBoxes; // Boxset for didigit representation.
92 AliTRDdataArrayI fData; // Raw-data array.
94 ClassDef(AliEveTRDDigits,1); // Digits visualisation for TRD
98 class AliEveTRDDigitsEditor : public TGedFrame
101 AliEveTRDDigitsEditor(const AliEveTRDDigitsEditor&); // Not implemented
102 AliEveTRDDigitsEditor& operator=(const AliEveTRDDigitsEditor&); // Not implemented
105 AliEveTRDDigitsEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
106 UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
107 virtual ~AliEveTRDDigitsEditor() {}
109 virtual void SetModel(TObject* obj);
112 AliEveTRDDigits* fM; // Model object.
114 ClassDef(AliEveTRDDigitsEditor,1); // Editor for AliEveTRDDigits
118 class AliEveTRDClusters : public AliEveTRDHits
121 AliEveTRDClusters(const AliEveTRDClusters&); // Not implemented
122 AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
125 AliEveTRDClusters(AliEveTRDChamber *p);
127 void PointSelected(Int_t n);
129 ClassDef(AliEveTRDClusters,1); // Base class for TRD clusters visualisation