00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef ROOT_TTable3Points
00013 #define ROOT_TTable3Points
00014
00015 #include "TTablePoints.h"
00016
00017 class TTable3Points : public TTablePoints
00018 {
00019 protected:
00020 ULong_t *fColumnOffset;
00021
00022 public:
00023 enum EPointDirection {kXPoints,kYPoints,kZPoints,kTotalSize};
00024 TTable3Points();
00025 TTable3Points(TTableSorter *sorter,const void *key, const Char_t *xName="x",
00026 const Char_t *yName="y", const Char_t *zName="z",Option_t *opt="");
00027 TTable3Points(TTableSorter *sorter,Int_t keyIndex, const Char_t *xName="x",
00028 const Char_t *yName="y", const Char_t *zName="z",Option_t *opt="");
00029 ~TTable3Points();
00030 virtual void SetAnyColumn(const Char_t *anyName, EPointDirection indx);
00031 virtual void SetXColumn(const Char_t *xName){ SetAnyColumn(xName,kXPoints);}
00032 virtual void SetYColumn(const Char_t *yName){ SetAnyColumn(yName,kYPoints);}
00033 virtual void SetZColumn(const Char_t *zName){ SetAnyColumn(zName,kZPoints);}
00034 virtual Int_t GetTotalKeys(){ return -1;}
00035 virtual Int_t GetKey(Int_t ){return -1;}
00036 virtual Int_t SetKeyByIndx(Int_t ){return -1;}
00037 virtual Int_t SetKeyByValue(Int_t){return -1;}
00038
00039 virtual Float_t GetAnyPoint(Int_t idx, EPointDirection xAxis) const;
00040 virtual Float_t GetX(Int_t idx) const {return GetAnyPoint(idx,kXPoints);}
00041 virtual Float_t GetY(Int_t idx) const {return GetAnyPoint(idx,kYPoints);}
00042 virtual Float_t GetZ(Int_t idx) const {return GetAnyPoint(idx,kZPoints);}
00043
00044 virtual void PaintPoints(int, float*, const char*) {}
00045 virtual const Float_t *GetXYZ(Int_t) {return 0;}
00046 virtual Float_t *GetXYZ(Float_t *xyz,Int_t idx , Int_t num=1 )const;
00047 virtual Float_t *GetP() const {return 0;}
00048 virtual Int_t GetN() const {return -1;}
00049
00050
00051 ClassDef(TTable3Points,0)
00052 };
00053
00054 #endif
00055