00001 //## begin module%36FE7C26037A.cm preserve=no 00002 // %X% %Q% %Z% %W% 00003 //## end module%36FE7C26037A.cm 00004 00005 //## begin module%36FE7C26037A.cp preserve=no 00006 //## end module%36FE7C26037A.cp 00007 00008 //## Module: Frame%36FE7C26037A; Pseudo Package specification 00009 //## Source file: C:\user\gipson\projects\mpk\code\geometry\Frame.h 00010 00011 #ifndef Frame_h 00012 #define Frame_h 1 00013 00014 //## begin module%36FE7C26037A.additionalIncludes preserve=no 00015 //## end module%36FE7C26037A.additionalIncludes 00016 00017 //## begin module%36FE7C26037A.includes preserve=yes 00018 //## end module%36FE7C26037A.includes 00019 00020 // Matrix4x4 00021 #include <math\Matrix4x4.h> 00022 00023 class Vector4; 00024 00025 //## begin module%36FE7C26037A.additionalDeclarations preserve=yes 00026 //## end module%36FE7C26037A.additionalDeclarations 00027 00028 00029 //## begin Frame%36FE7C26037A.preface preserve=yes 00030 //## end Frame%36FE7C26037A.preface 00031 00032 //## Class: Frame%36FE7C26037A 00033 // class for representing reference frames 00034 //## Category: geometry%36FE7BDE030C 00035 //## Persistence: Transient 00036 //## Cardinality/Multiplicity: n 00037 00038 //## Uses: <unnamed>%379638E00246;Vector4 { -> F} 00039 00040 class Frame : public Matrix4x4 //## Inherits: <unnamed>%36FE7C340208 00041 { 00042 //## begin Frame%36FE7C26037A.initialDeclarations preserve=yes 00043 //## end Frame%36FE7C26037A.initialDeclarations 00044 00045 public: 00046 //## Constructors (specified) 00047 //## Operation: Frame%923117054 00048 Frame (); 00049 00050 //## Operation: Frame%926014532 00051 Frame (const Matrix4x4& right); 00052 00053 //## Destructor (generated) 00054 virtual ~Frame(); 00055 00056 00057 //## Other Operations (specified) 00058 //## Operation: SetBaseFrame%923117055 00059 void SetBaseFrame (const unsigned int base); 00060 00061 //## Operation: BaseFrameNum%923117056 00062 // returns the frame number of the base frame to this frame 00063 // - all frames must be defined in another frame 00064 unsigned int BaseFrameNum () const; 00065 00066 //## Operation: operator<%945198430 00067 bool operator < (const Frame& right) const; 00068 00069 //## Operation: EvaluateOverall%923255743 00070 // computes the frame in relation to the root of the entire 00071 // tree 00072 Frame EvaluateOverall () const; 00073 00074 //## Operation: GetTranslationVector%926300305 00075 Vector4 GetTranslationVector () const; 00076 00077 //## Operation: operator==%945198431 00078 bool operator == (const Frame& right) const; 00079 00080 // Additional Public Declarations 00081 //## begin Frame%36FE7C26037A.public preserve=yes 00082 Frame( const Frame& right ) ; 00083 Frame& operator =( const Frame& right ) ; 00084 //## end Frame%36FE7C26037A.public 00085 protected: 00086 // Additional Protected Declarations 00087 //## begin Frame%36FE7C26037A.protected preserve=yes 00088 char name[ 256 ] ; 00089 //## end Frame%36FE7C26037A.protected 00090 private: 00091 // Data Members for Class Attributes 00092 00093 //## Attribute: baseFrame%37191E5B0212 00094 //## begin Frame::baseFrame%37191E5B0212.attr preserve=no private: unsigned int {UA} 00095 unsigned int baseFrame; 00096 //## end Frame::baseFrame%37191E5B0212.attr 00097 00098 // Additional Private Declarations 00099 //## begin Frame%36FE7C26037A.private preserve=yes 00100 //## end Frame%36FE7C26037A.private 00101 00102 private: //## implementation 00103 // Additional Implementation Declarations 00104 //## begin Frame%36FE7C26037A.implementation preserve=yes 00105 //## end Frame%36FE7C26037A.implementation 00106 00107 }; 00108 00109 //## begin Frame%36FE7C26037A.postscript preserve=yes 00110 //## end Frame%36FE7C26037A.postscript 00111 00112 // Class Frame 00113 00114 //## begin module%36FE7C26037A.epilog preserve=yes 00115 //## end module%36FE7C26037A.epilog 00116 00117 00118 #endif