#include <TEveQuadSet.h>
#include <TEveBoxSet.h>
#include <TEvePointSet.h>
+#include <TEveLine.h>
-#include <TGedFrame.h>
-
-#include "AliTRDdataArrayI.h"
+#ifndef ALITRDARRAYADC_H
+#include "AliTRDarrayADC.h"
+#endif
-class AliTRDdigitsManager;
class AliEveTRDChamber;
-
class AliEveTRDHits : public TEvePointSet
{
-private:
- AliEveTRDHits(const AliEveTRDHits&); // Not implemented
- AliEveTRDHits& operator=(const AliEveTRDHits&); // Not implemented
-
public:
- AliEveTRDHits(AliEveTRDChamber *p);
+ AliEveTRDHits();
+ ~AliEveTRDHits();
void PointSelected(Int_t n);
-protected:
- AliEveTRDChamber *fParent; // Chaber holding the hits.
-
- ClassDef(AliEveTRDHits,1); // Base class for TRD hits visualisation
-};
-
-class AliEveTRDHitsEditor : public TGedFrame
-{
private:
- AliEveTRDHitsEditor(const AliEveTRDHitsEditor&); // Not implemented
- AliEveTRDHitsEditor& operator=(const AliEveTRDHitsEditor&); // Not implemented
-
-public:
- AliEveTRDHitsEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
- UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
- virtual ~AliEveTRDHitsEditor() {}
-
- virtual void SetModel(TObject* obj);
-
-protected:
- AliEveTRDHits* fM; // Model object.
+ AliEveTRDHits(const AliEveTRDHits&); // Not implemented
+ AliEveTRDHits& operator=(const AliEveTRDHits&); // Not implemented
- ClassDef(AliEveTRDHitsEditor,1); // Editor for AliEveTRDHits.
+ ClassDef(AliEveTRDHits, 0); // Base class for TRD hits visualisation
};
+class AliTRDdigitsManager;
class AliEveTRDDigits : public TEveQuadSet
{
friend class AliEveTRDDigitsEditor;
-private:
- AliEveTRDDigits(const AliEveTRDDigits&); // Not implemented
- AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
-
public:
AliEveTRDDigits(AliEveTRDChamber *p);
+ ~AliEveTRDDigits();
void ComputeRepresentation();
+ const AliTRDarrayADC* GetData() const {return fData.HasData() ? &fData : 0x0;}
void Paint(Option_t *opt="");
void Reset();
void SetData(AliTRDdigitsManager *digits);
private:
TEveBoxSet fBoxes; // Boxset for didigit representation.
- AliTRDdataArrayI fData; // Raw-data array.
+ AliTRDarrayADC fData; // Raw-data array.
- ClassDef(AliEveTRDDigits,1); // Digits visualisation for TRD
+ AliEveTRDDigits(const AliEveTRDDigits&); // Not implemented
+ AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
+
+ ClassDef(AliEveTRDDigits, 0); // Digits visualisation for TRD
};
-class AliEveTRDDigitsEditor : public TGedFrame
-{
-private:
- AliEveTRDDigitsEditor(const AliEveTRDDigitsEditor&); // Not implemented
- AliEveTRDDigitsEditor& operator=(const AliEveTRDDigitsEditor&); // Not implemented
+class AliEveTRDClusters : public AliEveTRDHits
+{
public:
- AliEveTRDDigitsEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
- UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
- virtual ~AliEveTRDDigitsEditor() {}
+ AliEveTRDClusters();
- virtual void SetModel(TObject* obj);
+ void Load(Char_t *what="all", Bool_t stkwise=kTRUE) const; // *MENU*
+ void PointSelected(Int_t n);
+ void Print(Option_t *o = "") const; // *MENU*
-protected:
- AliEveTRDDigits* fM; // Model object.
+private:
+ AliEveTRDClusters(const AliEveTRDClusters&); // Not implemented
+ AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
- ClassDef(AliEveTRDDigitsEditor,1); // Editor for AliEveTRDDigits
+ ClassDef(AliEveTRDClusters, 0); // Base class for TRD clusters visualisation
};
-class AliEveTRDClusters : public AliEveTRDHits
+
+class AliTRDseedV1;
+class AliTRDtrackletMCM;
+class AliEveTRDTracklet : public TEveLine
{
+public:
+ AliEveTRDTracklet(AliTRDseedV1 *trklt);
+ AliEveTRDTracklet(AliTRDtrackletMCM *tracklet);
+ ~AliEveTRDTracklet();
+ AliEveTRDClusters* GetClusters() const {return fClusters;}
+ void Print(Option_t *o="") const; // *MENU*
+ void ShowMCM(Option_t *opt = "RHT") const; // *MENU*
private:
- AliEveTRDClusters(const AliEveTRDClusters&); // Not implemented
- AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
+ AliEveTRDClusters *fClusters; // clusters
-public:
- AliEveTRDClusters(AliEveTRDChamber *p);
+ AliEveTRDTracklet(const AliEveTRDTracklet&); // Not implemented
+ AliEveTRDTracklet& operator=(const AliEveTRDTracklet&); // Not implemented
+
+ ClassDef(AliEveTRDTracklet, 0); // TRD tracklet visualisation
+};
- void PointSelected(Int_t n);
- ClassDef(AliEveTRDClusters,1); // Base class for TRD clusters visualisation
+class AliTrackPoint;
+class AliTRDtrackV1;
+class AliRieman;
+class AliEveTRDTrack : public TEveLine
+{
+public:
+ enum AliEveTRDTrackState{
+ kSource = 0
+ ,kPID = 1
+ ,kTrackCosmics = 2
+ ,kTrackModel = 3
+ };
+ enum AliEveTRDTrackModel{
+ kRieman = 0
+ ,kKalman = 1
+ };
+
+
+ AliEveTRDTrack(AliTRDtrackV1 *trk);
+ virtual ~AliEveTRDTrack();
+ //AliEveTRDTracklet* GetTracklet(Int_t plane) const {return plane <6 && plane >= 0 ? fTracklet[plane] : 0x0;}
+ void Print(Option_t *opt="a") const; // *MENU*
+ void SetStatus(UChar_t s);
+ void SetESDstatus(ULong_t stat) {fESDStatus = stat;}
+private:
+ AliEveTRDTrack(const AliEveTRDTrack&); // Not implemented
+ AliEveTRDTrack& operator=(const AliEveTRDTrack&); // Not implemented
+
+ UChar_t fTrackState; // bit map for the track drawing state
+ ULong_t fESDStatus; // ESD status bit for this track
+ Float_t fAlpha; // sector angle for this track
+ AliTrackPoint *fPoints; // track crossing points
+ AliRieman *fRim; // rieman fitter
+ ClassDef(AliEveTRDTrack, 0); // TRD track visualisation
};
+
#endif