![]() |
MAK RTIspy API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1998 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: timeMsg.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtTimeMsg_H_ 00013 #define DtTimeMsg_H_ 00014 00015 #ifdef DtTIME 00016 00017 #include "rtiMsg.h" 00018 #include "netTimeMsg.h" 00019 00020 class DT_DLL_LRC DtTimeMsg : public DtRtiMsg 00021 { 00022 public: 00023 00025 DtTimeMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00026 00028 DtTimeMsg( 00029 #ifdef DtIFSPEC1516 00030 rti1516::LogicalTime const & theTime, 00031 #elif defined(DtIFSPEC1516E) 00032 rti1516e::LogicalTime const & theTime, 00033 #else 00034 RTI::FedTime const & theTime, 00035 #endif 00036 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00037 00039 DtTimeMsg(const DtNetTimeMsg* netRepMsg, 00040 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00041 00043 virtual ~DtTimeMsg(); 00044 00046 virtual void set( 00047 #ifdef DtIFSPEC1516 00048 rti1516::LogicalTime const & theTime); 00049 #elif defined(DtIFSPEC1516E) 00050 rti1516e::LogicalTime const & theTime); 00051 #else 00052 RTI::FedTime const & theTime); 00053 #endif 00054 00056 #ifdef DtIFSPEC1516 00057 virtual void setTime(rti1516::LogicalTime const & timeVal); 00058 virtual rti1516::LogicalTime const * time( 00059 DtLogicalTimeFactory* logicalTimeFactory) const; 00060 #elif defined(DtIFSPEC1516E) 00061 virtual void setTime(rti1516e::LogicalTime const & timeVal); 00062 virtual rti1516e::LogicalTime const * time( 00063 DtLogicalTimeFactory* logicalTimeFactory) const; 00064 #else 00065 virtual void setTime(RTI::FedTime const & timeVal); 00066 virtual RTI::FedTime const * time( 00067 DtLogicalTimeFactory* logicalTimeFactory) const; 00068 #endif 00069 00071 virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const; 00072 00073 protected: 00074 00076 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00077 00079 virtual DtNetTimeMsg* netTimeMsg(); 00080 virtual const DtNetTimeMsg* netTimeMsg() const; 00081 00083 #ifdef DtIFSPEC1516 00084 virtual int minSize(rti1516::LogicalTime const * theTime=NULL) const; 00085 #elif defined(DtIFSPEC1516E) 00086 virtual int minSize(rti1516e::LogicalTime const * theTime=NULL) const; 00087 #else 00088 virtual int minSize(RTI::FedTime const * theTime=NULL) const; 00089 #endif 00090 00092 virtual void setTimeSize(int size); 00093 virtual int timeSize() const; 00094 00096 virtual char* timePtr(); 00097 00099 virtual int timeFieldSize() const; 00100 00102 virtual DtTimeMsg* self() const; 00103 00104 protected: 00106 }; 00107 00108 inline DtTimeMsg* DtTimeMsg::self() const 00109 { 00110 return (DtTimeMsg*) this; 00111 } 00112 00113 #endif 00114 #endif