![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /********************************************************************* 00002 ** Copyright (c) 2001 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: archivable3DPoint.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef ARCHIVABLE3DPOINT_H_ 00013 #define ARCHIVABLE3DPOINT_H_ 00014 00015 #include "archiver/archiverDefines.h" 00016 #include <geometry/point.h> 00017 #include "archiver/archivableObject.h" 00018 00019 class DT_DLL_archiver DtArchivePoint : public DtPoint 00020 { 00021 public: 00022 DtArchivePoint() : DtPoint() {}; 00023 DtArchivePoint(const DtPoint& pnt) : DtPoint(pnt) {}; 00024 DtArchivePoint(const DtArchivePoint& pnt) : DtPoint(pnt) {}; 00025 00027 //double* xValue() { return const_cast<double *>(&x()); }; 00028 double* xValue() { return &myRep[0]; }; 00029 double* yValue() { return &myRep[1]; }; 00030 double* zValue() { return &myRep[2]; }; 00031 }; 00032 00033 class DT_DLL_archiver DtArchivable3DPoint : public DtArchivableObject 00034 { 00035 public: 00036 DtArchivable3DPoint(); 00037 DtArchivable3DPoint(const DtArchivable3DPoint& pnt); 00038 DtArchivable3DPoint(const DtPoint& pnt); 00039 virtual ~DtArchivable3DPoint(); 00040 00041 virtual DtArchivable3DPoint& operator=(const DtArchivable3DPoint& orig); 00042 00043 virtual operator DtPoint*() const; 00044 virtual operator DtPoint&() const; 00045 00046 virtual DtPoint* point(); 00047 00048 static DtArchivableObject* create(); 00049 00050 DECLARE_ARCHIVABLE_CREATOR() 00051 00052 protected: 00053 DtArchivePoint myPoint; 00054 }; 00055 00056 #endif 00057