00001 00002 00008 /* 00009 * 00010 */ 00012 00013 #ifndef __SSF_ORBIT_REPRESENTATION_H__ 00014 #define __SSF_ORBIT_REPRESENTATION_H__ 00015 00016 #include "Matrix.h" 00017 #include "../orbitframes/OrbitFrame.h" 00018 namespace O_SESSAME { 00019 00045 class OrbitStateRepresentation 00046 { 00047 public: 00052 virtual void SetPositionVelocity(const Vector &_Position, const Vector &_Velocity) = 0; 00053 00057 virtual void SetPositionVelocity(const Vector &_PositionVelocity) = 0; 00058 00062 virtual Vector GetPositionVelocity() const = 0; 00063 00068 virtual void GetPositionVelocity(Vector &_Position, Vector &_Velocity) const = 0; 00069 00082 virtual OrbitStateRepresentation* NewPointer() = 0; 00083 00096 virtual OrbitStateRepresentation* Clone() = 0; 00097 00098 // virtual void SetState(const Vector &_Elements1, const Vector &_Elements2) = 0; 00102 virtual void SetState(const Vector &_Elements) = 0; 00103 00107 virtual Vector GetState() const = 0; 00108 00109 protected: 00110 00111 private: 00112 00113 }; 00114 } // close namespace O_SESSAME 00115 00116 #endif 00117 00118 // Do not change the comments below - they will be added automatically by CVS 00119 /***************************************************************************** 00120 * $Log: OrbitStateRepresentation.h,v $ 00121 * Revision 1.8 2003/05/13 18:47:56 nilspace 00122 * Fixed comments for better formatting. 00123 * 00124 * Revision 1.7 2003/05/05 20:47:38 nilspace 00125 * Changed the Get/SetPositionVelocity functions to not require a OrbitFrame. 00126 * 00127 * Revision 1.6 2003/05/02 16:16:46 nilspace 00128 * Documented the API. 00129 * 00130 * Revision 1.5 2003/04/29 18:48:31 nilspace 00131 * Added NewPointer and Clone functions to help in getting the correct memory allocation. 00132 * 00133 * Revision 1.4 2003/04/24 21:14:23 nilspace 00134 * const'd all Get() functions. 00135 * 00136 * Revision 1.3 2003/04/23 16:26:08 nilspace 00137 * Updated directory structure & default parameters. 00138 * 00139 * Revision 1.2 2003/04/22 18:06:08 nilspace 00140 * Added math for Matthew Berry. 00141 * 00142 * Revision 1.1 2003/04/08 22:47:35 nilspace 00143 * Initial Submission. 00144 * 00145 * 00146 ******************************************************************************/