00001
00017 #ifndef GFXTRACK_H
00018 #define GFXTRACK_H
00019
00020 #include <TObject.h>
00021
00022 class CandTrackHandle;
00023 class GfxTrackList;
00024
00025 class GfxTrack : public TObject
00026 {
00027
00028 public:
00029
00030 GfxTrack(const CandTrackHandle& cth, GfxTrackList& parent);
00031 GfxTrack(const GfxTrack& rhs);
00032
00033 ~GfxTrack();
00034 void Clear(Option_t* ="");
00035
00036
00037 void Configure();
00038
00039 void ExecuteEvent(int event, int px, int py);
00040 void Paint(Option_t* option="");
00041 int DistancetoPrimitive(int px, int py);
00042
00043 const CandTrackHandle& GetTrack() { return fTrack; }
00044 Int_t GetColor(){return fColor;}
00045 private:
00046
00047 GfxTrack &operator=(const GfxTrack&);
00048
00049 int GetCandTrackData(float *u, float *v, float *x, float *y,
00050 float *z, float* q, float *t,
00051 int *strip_number, int *plane_number);
00052 bool BuildRealImp();
00053 bool BuildDiscreteImp();
00054
00055 #ifndef __CINT__
00056 const CandTrackHandle& fTrack;
00057 GfxTrackList& fParent;
00058 TObject* fImp;
00059 #endif
00060 Int_t fColor;
00061
00062 ClassDef(GfxTrack,0)
00063 };
00064
00065 #endif // GFXTRACK_H