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>
28 #include "AliTRDdataArrayI.h"
30 class AliEveTRDChamber;
31 class AliEveTRDHits : public TEvePointSet
37 void PointSelected(Int_t n);
41 AliEveTRDHits(const AliEveTRDHits&); // Not implemented
42 AliEveTRDHits& operator=(const AliEveTRDHits&); // Not implemented
44 ClassDef(AliEveTRDHits, 0); // Base class for TRD hits visualisation
48 class AliTRDdigitsManager;
49 class AliEveTRDDigits : public TEveQuadSet
51 friend class AliEveTRDDigitsEditor;
54 AliEveTRDDigits(AliEveTRDChamber *p);
57 void ComputeRepresentation();
58 const AliTRDdataArrayI* GetData() const {return fData.GetNelems() ? &fData : 0x0;}
59 void Paint(Option_t *opt="");
61 void SetData(AliTRDdigitsManager *digits);
64 AliEveTRDChamber *fParent;
67 TEveBoxSet fBoxes; // Boxset for didigit representation.
68 AliTRDdataArrayI fData; // Raw-data array.
70 AliEveTRDDigits(const AliEveTRDDigits&); // Not implemented
71 AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
73 ClassDef(AliEveTRDDigits, 0); // Digits visualisation for TRD
78 class AliEveTRDClusters : public AliEveTRDHits
83 void PointSelected(Int_t n);
86 AliEveTRDClusters(const AliEveTRDClusters&); // Not implemented
87 AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
89 ClassDef(AliEveTRDClusters, 0); // Base class for TRD clusters visualisation
95 class AliEveTRDTracklet : public TEveLine
98 AliEveTRDTracklet(AliTRDseedV1 *trklt);
99 // ~AliEveTRDTracklet();
100 AliEveTRDClusters* GetClusters() const {return fClusters;}
101 void ProcessData(); // *MENU*
103 AliEveTRDClusters *fClusters; // clusters
105 AliEveTRDTracklet(const AliEveTRDTracklet&); // Not implemented
106 AliEveTRDTracklet& operator=(const AliEveTRDTracklet&); // Not implemented
108 ClassDef(AliEveTRDTracklet, 0); // TRD tracklet visualisation
114 class AliEveTRDTrack : public TEveLine
117 AliEveTRDTrack(AliTRDtrackV1 *trk);
118 // ~AliEveTRDTrack();
119 AliEveTRDTracklet* GetTracklet(Int_t plane) const {return plane <6 && plane >= 0 ? fTracklet[plane] : 0x0;}
120 void ProcessData(); // *MENU*
123 AliEveTRDTracklet *fTracklet[6]; // tracklets
125 AliEveTRDTrack(const AliEveTRDTrack&); // Not implemented
126 AliEveTRDTrack& operator=(const AliEveTRDTrack&); // Not implemented
128 ClassDef(AliEveTRDTrack, 0); // TRD track visualisation