00001 00002 00008 /* 00009 */ 00011 00012 #ifndef __ORBIT_HISTORY_H__ 00013 #define __ORBIT_HISTORY_H__ 00014 00015 #include "Matrix.h" 00016 #include "Rotation.h" 00017 #include "History.h" 00018 #include "OrbitState.h" 00019 #include "orbitstaterep/PositionVelocity.h" 00020 #include <vector> 00021 using namespace std; 00022 namespace O_SESSAME { 00023 00051 class OrbitHistory : public History 00052 { 00053 public: 00056 OrbitHistory(); 00057 00067 void AppendHistory(const double &_appendTime, const OrbitState &_appendOrbitState); 00068 00078 void AppendHistory(const ssfTime &_appendTime, const OrbitState &_appendOrbitState); 00079 00088 void AppendHistory(const vector<ssfTime> &_appendTime, const vector<OrbitState> &_appendOrbitState); 00089 00091 void ResetHistory(); 00092 00101 Matrix GetHistory(); 00102 00111 void GetState(const ssfTime& _requestedTime, OrbitState& _returnOrbitState); 00112 00122 OrbitState GetState(const ssfTime& _requestedTime); 00123 private: 00125 vector<OrbitState> m_OrbitHistory; 00127 vector<Interpolator*> m_OrbitInterpolations; 00128 }; 00129 } // close namespace O_SESSAME 00130 00131 #endif 00132 00133 00134 // Do not change the comments below - they will be added automatically by CVS 00135 /***************************************************************************** 00136 * $Log: OrbitHistory.h,v $ 00137 * Revision 1.7 2003/05/22 21:01:31 nilspace 00138 * Updated comments and added SetOrbitRepresentation(new PositionVelocity). 00139 * 00140 * Revision 1.6 2003/05/20 17:50:01 nilspace 00141 * Updated comments. 00142 * 00143 * Revision 1.5 2003/05/13 18:45:35 nilspace 00144 * Added interpolation functionality. 00145 * 00146 * Revision 1.4 2003/05/01 23:59:48 nilspace 00147 * Commented the API. 00148 * 00149 * Revision 1.3 2003/04/27 22:04:33 nilspace 00150 * Created the namespace O_SESSAME. 00151 * 00152 * Revision 1.2 2003/04/25 17:15:00 nilspace 00153 * Added OrbitHistory & made sure it builds. 00154 * Moved Appending time to History.cpp. 00155 * 00156 * Revision 1.1 2003/04/25 13:39:09 nilspace 00157 * Initial Submission. 00158 * 00159 * Revision 1.1 2003/03/27 20:29:20 nilspace 00160 * Initial Submission. 00161 * 00162 ******************************************************************************/