]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveDet/AliEveTRDData.h
0cb811333b5956be8476d6fea4eb59219b57e4ab
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTRDData.h
1 // $Id$
2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
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 /////////////////////////////////////////////////////////////////////////
10 //
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
15 //
16 // by A.Bercuci (A.Bercuci@gsi.de)   Fri Oct 27 2006
17 ///////////////////////////////////////////////////////////////////////
18
19 #ifndef AliEveTRDData_H
20 #define AliEveTRDData_H
21
22 #include <TEveQuadSet.h>
23 #include <TEveBoxSet.h>
24 #include <TEvePointSet.h>
25 #include <TEveLine.h>
26
27
28 #include "AliTRDdataArrayI.h"
29
30 class AliEveTRDChamber;
31 class AliEveTRDHits : public TEvePointSet
32 {
33 public:
34   AliEveTRDHits();
35   ~AliEveTRDHits();
36
37   void PointSelected(Int_t n);
38
39
40 private:
41   AliEveTRDHits(const AliEveTRDHits&);            // Not implemented
42   AliEveTRDHits& operator=(const AliEveTRDHits&); // Not implemented
43
44   ClassDef(AliEveTRDHits, 0); // Base class for TRD hits visualisation
45 };
46
47
48 class AliTRDdigitsManager;
49 class AliEveTRDDigits : public TEveQuadSet
50 {
51   friend class AliEveTRDDigitsEditor;
52
53 public:
54   AliEveTRDDigits(AliEveTRDChamber *p);
55   ~AliEveTRDDigits();
56
57   void                  ComputeRepresentation();
58   void                  Paint(Option_t *opt="");
59   void                  Reset();
60   void                  SetData(AliTRDdigitsManager *digits);
61
62 protected:
63   AliEveTRDChamber *fParent;
64
65 private:
66   TEveBoxSet            fBoxes; // Boxset for didigit representation.
67   AliTRDdataArrayI      fData;  // Raw-data array.
68
69   AliEveTRDDigits(const AliEveTRDDigits&);            // Not implemented
70   AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
71
72   ClassDef(AliEveTRDDigits, 0); // Digits visualisation for TRD
73 };
74
75
76
77 class AliEveTRDClusters : public AliEveTRDHits
78 {
79 public:
80   AliEveTRDClusters();
81
82   void PointSelected(Int_t n);
83
84 private:
85   AliEveTRDClusters(const AliEveTRDClusters&);            // Not implemented
86   AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
87
88   ClassDef(AliEveTRDClusters, 0); // Base class for TRD clusters visualisation
89 };
90
91
92
93 class AliTRDseedV1;
94 class AliEveTRDTracklet : public TEveLine
95 {
96 public:
97   AliEveTRDTracklet(AliTRDseedV1 *trklt);
98 //  ~AliEveTRDTracklet();
99   AliEveTRDClusters* GetClusters() const {return fClusters;}
100   void               ProcessData(); // *MENU*
101 private:
102   AliEveTRDClusters *fClusters;  // clusters
103
104   AliEveTRDTracklet(const AliEveTRDTracklet&);            // Not implemented
105   AliEveTRDTracklet& operator=(const AliEveTRDTracklet&); // Not implemented
106
107   ClassDef(AliEveTRDTracklet, 0); // TRD tracklet visualisation
108 };
109
110
111
112 class AliTRDtrackV1;
113 class AliEveTRDTrack : public TEveLine
114 {
115 public:
116   AliEveTRDTrack(AliTRDtrackV1 *trk);
117 //  ~AliEveTRDTrack();
118   AliEveTRDTracklet*  GetTracklet(Int_t plane) const {return plane <6 && plane >= 0 ? fTracklet[plane] : 0x0;}
119   void               ProcessData(); // *MENU* 
120  
121 private:
122   AliEveTRDTracklet  *fTracklet[6]; // tracklets
123
124   AliEveTRDTrack(const AliEveTRDTrack&);            // Not implemented
125   AliEveTRDTrack& operator=(const AliEveTRDTrack&); // Not implemented
126
127   ClassDef(AliEveTRDTrack, 0); // TRD track visualisation
128 };
129
130
131 #endif