VR-Link API Documentation for HLA 1.3
vrlFedTime.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1997 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: vrlFedTime.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *******************************************************************************/
00010 
00011 //#ifndef _WIN32         //! On Windows ignore this file altogether
00012 
00013 #ifndef DtVrlFedTime_H_
00014 #define DtVrlFedTime_H_
00015 
00016 #if DtHLA 
00017 
00018 #include <RTI.hh>
00019 #include <sys/types.h>
00020 #include <string.h>
00021 #include "MachineTypes.h"
00022 
00023 #if _PowerUX || RTI_USES_STD_FSTREAM
00024 #include <iostream>
00025 #define ostream std::ostream
00026 #define istream std::istream
00027 #else
00028 #include "iostream.h"
00029 #endif
00030 
00031 class DT_DLL_VL DtVrlFedTime : public RTI::FedTime {
00032 //-----------------------------------------------------------------
00034 //-----------------------------------------------------------------
00035 public:
00036   DtVrlFedTime();
00037   DtVrlFedTime(const double&);
00038   DtVrlFedTime(const DtVrlFedTime&);
00039   virtual ~DtVrlFedTime();
00040 
00041 //-----------------------------------------------------------------
00043 //-----------------------------------------------------------------
00044 public:
00045   virtual void                setZero();
00046   virtual RTI::Boolean        isZero();
00047   virtual void                setEpsilon();
00048   virtual void                setPositiveInfinity();
00049   virtual RTI::Boolean        isPositiveInfinity();
00050   virtual int                 encodedLength() const;
00051   virtual void                encode(char *buff) const;
00052   virtual int                 getPrintableLength() const;
00053   virtual void                getPrintableString(char*) const;
00054   virtual void                getPrintableString(char*);
00055 
00056 //-----------------------------------------------------------------
00058 //-----------------------------------------------------------------
00059 public:
00060   virtual RTI::FedTime& operator+= (const RTI::FedTime&)
00061     throw (RTI::InvalidFederationTime);
00062 
00063   virtual RTI::FedTime& operator-= (const RTI::FedTime&)
00064     throw (RTI::InvalidFederationTime);
00065   
00066   virtual RTI::Boolean operator<= (const RTI::FedTime&) const
00067     throw (RTI::InvalidFederationTime);
00068 
00069   virtual RTI::Boolean operator< (const RTI::FedTime&) const
00070     throw (RTI::InvalidFederationTime);
00071 
00072    virtual RTI::Boolean operator>= (const RTI::FedTime&) const
00073     throw (RTI::InvalidFederationTime);
00074   
00075   virtual RTI::Boolean operator> (const RTI::FedTime&) const
00076     throw (RTI::InvalidFederationTime);
00077 
00078   virtual RTI::Boolean operator== (const RTI::FedTime&) const
00079     throw (RTI::InvalidFederationTime);
00080 
00081   virtual RTI::FedTime& operator= (const RTI::FedTime&)
00082     throw (RTI::InvalidFederationTime);
00083 
00084 //-----------------------------------------------------------------
00086 //-----------------------------------------------------------------
00087 public:
00088   virtual double           getTime() const;
00089 
00090 //-----------------------------------------------------------------
00092 //-----------------------------------------------------------------
00093   virtual RTI::Boolean operator== (const double&) const
00094     throw (RTI::InvalidFederationTime);
00095 
00096   virtual RTI::Boolean operator!= (const RTI::FedTime&) const
00097     throw (RTI::InvalidFederationTime);
00098   
00099   virtual RTI::Boolean operator!= (const double&) const
00100     throw (RTI::InvalidFederationTime);
00101   
00102   virtual RTI::FedTime& operator= (const DtVrlFedTime&)
00103     throw (RTI::InvalidFederationTime);
00104 
00105   virtual RTI::FedTime& operator= (const double&)
00106     throw (RTI::InvalidFederationTime);
00107 
00108   virtual RTI::FedTime& operator*= (const RTI::FedTime&)
00109     throw (RTI::InvalidFederationTime);
00110 
00111   virtual RTI::FedTime& operator/= (const RTI::FedTime&)
00112     throw (RTI::InvalidFederationTime);
00113 
00114   virtual RTI::FedTime& operator+= (const double&)
00115     throw (RTI::InvalidFederationTime);
00116 
00117   virtual RTI::FedTime& operator-= (const double&)
00118     throw (RTI::InvalidFederationTime);
00119 
00120   virtual RTI::FedTime& operator*= (const double&)
00121     throw (RTI::InvalidFederationTime);
00122 
00123   virtual RTI::FedTime& operator/= (const double&)
00124     throw (RTI::InvalidFederationTime);
00125 
00126   virtual DtVrlFedTime operator+ (const RTI::FedTime&)
00127     throw (RTI::InvalidFederationTime);
00128 
00129   virtual DtVrlFedTime operator+ (const double&)
00130     throw (RTI::InvalidFederationTime);
00131 
00132   virtual DtVrlFedTime operator- (const RTI::FedTime&)
00133     throw (RTI::InvalidFederationTime);
00134 
00135   virtual DtVrlFedTime operator- (const double&)
00136     throw (RTI::InvalidFederationTime);
00137 
00138   virtual DtVrlFedTime operator* (const RTI::FedTime&)
00139     throw (RTI::InvalidFederationTime);
00140 
00141   virtual DtVrlFedTime operator* (const double&)
00142     throw (RTI::InvalidFederationTime);
00143 
00144   virtual DtVrlFedTime operator/ (const RTI::FedTime&)
00145     throw (RTI::InvalidFederationTime);
00146 
00147   virtual DtVrlFedTime operator/ (const double&)
00148     throw (RTI::InvalidFederationTime);
00149   
00150 //-----------------------------------------------------------------
00152 //-----------------------------------------------------------------
00153 public:
00154   friend ostream& operator<< (ostream&, RTI::FedTime&);
00155 
00156 //-----------------------------------------------------------------
00158 //-----------------------------------------------------------------
00159 private:
00160   double                 _fedTime;
00161   double                 _zero;
00162   double                 _epsilon;
00163   double                 _positiveInfinity;
00164 };
00165 
00166 //-----------------------------------------------------------------
00168 //-----------------------------------------------------------------
00169 
00170 DtVrlFedTime operator+ (const double&, const RTI::FedTime&);
00171 DtVrlFedTime operator- (const double&, const RTI::FedTime&);
00172 DtVrlFedTime operator* (const double&, const RTI::FedTime&);
00173 DtVrlFedTime operator/ (const double&, const RTI::FedTime&);
00174 
00175 #endif   //! DtHLA
00176 #endif   //! DtVrlFedTime_H_
00177 //#endif   //! _WIN32

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)