| Earth Observation Mission CFI Software Orbit Software User Manual |

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

# C:/Jenkins/workspace/CPP_create_documentation/slaves/windows8/lib_src/Orbit/include/ANXTime.h

    00001 //--------------------------------------------------------
    00002 // Earth Observation Mission CFI Software. Version 4.11
    00003 //--------------------------------------------------------
    00004
    00005 //--------------------------------------------------------------------
    00006 // CVS Info: $Id: ANXTime.h,v 1.12 2014-02-25 15:36:32 cavm Exp $
    00007 //--------------------------------------------------------------------
    00008
    00009 #ifndef _ANXTIME_H
    00010 #define _ANXTIME_H
    00011
    00012 //--INCLUDE-----------------------------------------------------------
    00013 #include "OrbitData.h"
    00014 #include "CfiError.h"
    00015 #include "CfiClass.h"
    00016 #include "OrbitId.h"
    00017
    00018 //--NAMESPACES--------------------------------------------------------
    00019 using namespace std;
    00020
    00021 namespace EECFI
    00022 {
    00023
    00027   class XO_DECL ANXTime: public CfiClass
    00028   {
    00029     friend class RelANXTime;
    00030     friend class OrbitExtra;
    00031     friend class Swath;
    00032
    00033     public:
    00034       long orbit;
    00035       long seconds;
    00036       long microseconds;
    00037
    00039       ANXTime();
    00040
    00042       ANXTime( long orbitIn, long secondsIn, long microsecIn );
    00043
    00045       ANXTime( const OrbitId &orbitId, long orbitIn, long secondsIn, long microsecIn )  throw (CfiError);
    00046
    00048       ANXTime( const ANXTime &at );
    00049
    00051       ~ANXTime();
    00052
    00054       double orbitToTime( long timeRef ) const throw (CfiError);
    00055
    00059       void timeToOrbit( long timeRef, double time ) throw (CfiError);
    00060
    00062       void setBOM();
    00063
    00065       void setEOM();
    00066
    00068       OrbitalInfo getOrbitInfo() const throw (CfiError);
    00069
    00078       void orbitInfoConfigure( long item, long option ) const throw (CfiError); // AN-523
    00079
    00081       void adjustWithNodalPeriod() throw (CfiError);
    00082
    00083       // ANXTime arithmetic operators.
    00084
    00086       ANXTime operator+ ( double time );
    00088       ANXTime operator- ( double time );
    00090       double  operator- ( const ANXTime &t ) const throw (CfiError);
    00091
    00092       // ANXTime comparisons.
    00094       bool operator>  ( const ANXTime &t ) const throw (CfiError);
    00096       bool operator<  ( const ANXTime &t ) const throw (CfiError);
    00098       bool operator>= ( const ANXTime &t ) const throw (CfiError);
    00100       bool operator<= ( const ANXTime &t ) const throw (CfiError);
    00102       bool operator== ( const ANXTime &t ) const throw (CfiError);
    00104       bool operator!= ( const ANXTime &t ) const throw (CfiError);
    00105
    00107       void operator= ( const ANXTime &t );
    00108
    00109     protected:
    00110
    00111
    00112     private:
    00113       OrbitId orbitId;
    00114       int isBOM_EOM;
    00115   };
    00116
    00117 } // closing namespace
    00118
    00119 #endif