00001 ////////////////////////////////////////////////////////////////////////////////////////////////// 00002 /*! \file OrbitFrameIJK.h 00003 * \brief Interface to the Geocentric Orbit Coordinate System Class. 00004 * \author $Author: jayhawk_hokie $ 00005 * \version $Revision: 1.2 $ 00006 * \date $Date: 2005/06/10 12:53:28 $ 00007 *////////////////////////////////////////////////////////////////////////////////////////////////// 00008 /* 00009 * 00010 */ 00011 ////////////////////////////////////////////////////////////////////////////////////////////////// 00012 00013 #ifndef __SSF_ORBIT_FRAME_IJK_H__ 00014 #define __SSF_ORBIT_FRAME_IJK_H__ 00015 #include <rotation/Rotation.h> 00016 #include <orbit/orbitframes/OrbitFrame.h> 00017 /*! \brief Geocentric Orbit Coordinate System 00018 * \ingroup OrbitFrames 00019 * 00020 * \detail Detailed Description. 00021 */ 00022 class OrbitFrameIJK : public OrbitFrame 00023 { 00024 public: 00025 OrbitFrameIJK(); 00026 virtual ~OrbitFrameIJK(); 00027 Rotation GetRotation2IJK() const; 00028 Rotation GetRotationFromIJK() const; 00029 00030 OrbitFrameIJK* NewPointer(); 00031 /*! \brief Returns a pointer to a copy of the Orbit Frame 00032 * 00033 * \detail Since orbit frames don't change, the function actually just returns a new pointer since 00034 * its cheaper than copying useless information. 00035 */ 00036 OrbitFrameIJK* Clone(); 00037 protected: 00038 00039 00040 private: 00041 00042 }; 00043 inline OrbitFrameIJK::OrbitFrameIJK() {}; 00044 inline OrbitFrameIJK::~OrbitFrameIJK() {}; 00045 inline Rotation OrbitFrameIJK::GetRotation2IJK() const {return eye(3);}; 00046 inline Rotation OrbitFrameIJK::GetRotationFromIJK() const {return eye(3);}; 00047 inline OrbitFrameIJK* OrbitFrameIJK::NewPointer() { return new OrbitFrameIJK(); } 00048 inline OrbitFrameIJK* OrbitFrameIJK::Clone() { return new OrbitFrameIJK(/**this*/); } 00049 #endif 00050 00051 // Do not change the comments below - they will be added automatically by CVS 00052 /***************************************************************************** 00053 * $Log: OrbitFrameIJK.h,v $ 00054 * Revision 1.2 2005/06/10 12:53:28 jayhawk_hokie 00055 * Changed header file format to make it easier to link to the spacecraft code by only having to specify dsacss/dep/spacecraft/src (ex. "file.h" changed to <dir/file.h> where dir is a folder in src). 00056 * 00057 * Revision 1.1.1.1 2005/04/26 17:40:59 cakinli 00058 * Adding OpenSESSAME to DSACSS distrib to capture fixed version. 00059 * 00060 * Revision 1.7 2003/05/20 17:47:59 nilspace 00061 * Updated comments. 00062 * 00063 * Revision 1.6 2003/04/29 20:17:39 nilspace 00064 * Added NewPointer() and Clone() functions. 00065 * 00066 * Revision 1.5 2003/04/29 18:45:31 nilspace 00067 * Moved all function definitions out of class interface definition. 00068 * 00069 * Revision 1.4 2003/04/24 20:05:55 nilspace 00070 * Made GetRotation functions const. 00071 * 00072 * Revision 1.3 2003/04/23 16:26:05 nilspace 00073 * Updated directory structure & default parameters. 00074 * 00075 * Revision 1.2 2003/04/22 17:37:25 nilspace 00076 * Added reference frames. 00077 * 00078 * Revision 1.1 2003/04/08 22:48:04 nilspace 00079 * Initial Submission. 00080 * 00081 * 00082 ******************************************************************************/