![]() |
MAK RTIspy API Documentation for HLA Evolved
|
00001 /*********************************************************************** 00002 The IEEE hereby grants a general, royalty-free license to copy, distribute, 00003 display and make derivative works from this material, for all purposes, 00004 provided that any use of the material contains the following 00005 attribution: "Reprinted with permission from IEEE 1516.1(TM)-2010". 00006 Should you require additional information, contact the Manager, Standards 00007 Intellectual Property, IEEE Standards Association (stds-ipr@ieee.org). 00008 ***********************************************************************/ 00009 /*********************************************************************** 00010 IEEE 1516.1 High Level Architecture Interface Specification C++ API 00011 File: RTI/time/HLAfloat64TimeFactory.h 00012 ***********************************************************************/ 00013 00014 #ifndef RTI_HLAfloat64TimeFactory_H_ 00015 #define RTI_HLAfloat64TimeFactory_H_ 00016 00017 #include <RTI/LogicalTimeFactory.h> 00018 00019 namespace rti1516e 00020 { 00021 class HLAfloat64Time; 00022 class HLAfloat64Interval; 00023 00024 // Defines interface for HLAfloat64TimeFactory which presents a 00025 // floating point-based time/interval representation in the range 0 - 2^63-1. 00026 00027 const std::wstring HLAfloat64TimeName(L"HLAfloat64Time"); 00028 00029 class RTI_EXPORT HLAfloat64TimeFactory : public rti1516e::LogicalTimeFactory 00030 { 00031 public: 00032 HLAfloat64TimeFactory (); 00033 00034 virtual ~HLAfloat64TimeFactory () 00035 throw (); 00036 00037 // Return a LogicalTime with the given value 00038 virtual std::auto_ptr< HLAfloat64Time > makeLogicalTime ( 00039 double value) 00040 throw (rti1516e::InternalError); 00041 00042 // Return a LogicalTime with a value of "initial" 00043 virtual std::auto_ptr< LogicalTime > makeInitial() 00044 throw (InternalError); 00045 00046 // Return a LogicalTime with a value of "final" 00047 virtual std::auto_ptr< LogicalTime > makeFinal() 00048 throw (InternalError); 00049 00050 // Return a LogicalTimeInterval with the given value 00051 virtual std::auto_ptr< HLAfloat64Interval > makeLogicalTimeInterval ( 00052 double value) 00053 throw (rti1516e::InternalError); 00054 00055 // Return a LogicalTimeInterval with a value of "zero" 00056 virtual std::auto_ptr< LogicalTimeInterval > makeZero() 00057 throw (InternalError); 00058 00059 // Return a LogicalTimeInterval with a value of "epsilon" 00060 virtual std::auto_ptr< LogicalTimeInterval > makeEpsilon() 00061 throw (InternalError); 00062 00063 // LogicalTime decode from an encoded LogicalTime 00064 virtual std::auto_ptr< LogicalTime > decodeLogicalTime ( 00065 VariableLengthData const & encodedLogicalTime) 00066 throw (InternalError, 00067 CouldNotDecode); 00068 00069 // Alternate LogicalTime decode that reads directly from a buffer 00070 virtual std::auto_ptr< LogicalTime > decodeLogicalTime ( 00071 void* buffer, 00072 size_t bufferSize) 00073 throw (InternalError, 00074 CouldNotDecode); 00075 00076 // LogicalTimeInterval decode from an encoded LogicalTimeInterval 00077 virtual std::auto_ptr< LogicalTimeInterval > decodeLogicalTimeInterval ( 00078 VariableLengthData const & encodedValue) 00079 throw (InternalError, 00080 CouldNotDecode); 00081 00082 // Alternate LogicalTimeInterval decode that reads directly from a buffer 00083 virtual std::auto_ptr< LogicalTimeInterval > decodeLogicalTimeInterval ( 00084 void* buffer, 00085 size_t bufferSize) 00086 throw (InternalError, 00087 CouldNotDecode); 00088 00089 virtual std::wstring getName () const; 00090 }; 00091 } 00092 00093 #endif // RTI_HLAfloat64TimeFactory_H_ 00094