00001 /* $Id: TupleSixD.h,v 1.2 2003/03/16 17:18:09 pfb Exp $ */ 00002 00003 #ifndef _TupleSixD_h 00004 #define _TupleSixD_h 00005 00006 #include "TupleThreeD.h" 00007 00012 class TupleSixD 00013 { 00014 //**************************************************************************** 00015 public: 00016 00020 TupleSixD(); 00021 00027 TupleSixD(const TupleThreeD& p0, const TupleThreeD& p1); 00028 00033 TupleSixD(const TupleSixD& rhs); 00034 00038 virtual ~TupleSixD(); 00039 00045 TupleSixD& operator=(const TupleSixD& rhs); 00046 00052 bool operator==(const TupleSixD& rhs) const; 00053 00059 bool operator!=(const TupleSixD& rhs) const; 00060 00067 const TupleSixD& value(const TupleThreeD& p0, const TupleThreeD& p1); 00068 00073 const TupleSixD& value() const; 00074 00079 const TupleThreeD& P0() const; 00080 00085 const TupleThreeD& P1() const; 00086 00092 double operator*(const TupleSixD& rhs) const; 00093 00099 TupleSixD operator+(const TupleSixD& rhs) const; 00100 00106 TupleSixD operator-(const TupleSixD& rhs) const; 00107 00108 //**************************************************************************** 00109 private: 00110 00111 TupleThreeD p0; 00112 TupleThreeD p1; 00113 }; 00114 00125 #endif