![]() |
MAK RTIspy API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1998 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: saveMsg.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *********************************************************************/ 00008 00011 00012 #ifndef DtSaveMsg_H_ 00013 #define DtSaveMsg_H_ 00014 00015 #include "rtiMsg.h" 00016 #include "netSaveMsg.h" 00017 00019 00020 class DT_DLL_LRC DtSaveMsg : public DtRtiMsg 00021 { 00022 public: 00023 00025 DtSaveMsg(); 00026 00028 virtual ~DtSaveMsg(); 00029 00031 void set(const char* theLabel); 00032 00034 virtual void setLabel(const char* label); 00035 virtual const char* label() const; 00036 00038 virtual void setRequestID(unsigned long requestIDValue); 00039 virtual unsigned long requestID() const; 00040 00042 virtual void setResult(unsigned char result); 00043 virtual unsigned char result() const; 00044 00046 #ifdef DtIFSPEC1516 00047 virtual void setTime(rti1516::LogicalTime const & timeVal); 00048 virtual rti1516::LogicalTime const * time( 00049 DtLogicalTimeFactory* logicalTimeFactory) const; 00050 #elif defined(DtIFSPEC1516E) 00051 virtual void setTime(rti1516e::LogicalTime const & timeVal); 00052 virtual rti1516e::LogicalTime const * time( 00053 DtLogicalTimeFactory* logicalTimeFactory) const; 00054 #else 00055 virtual void setTime(RTI::FedTime const & timeVal); 00056 virtual RTI::FedTime const * time( 00057 DtLogicalTimeFactory* logicalTimeFactory) const; 00058 #endif 00059 00061 virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const; 00062 00063 protected: 00064 00066 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00067 00069 virtual char* labelPtr(); 00070 00072 virtual char* timePtr(); 00073 00075 virtual int labelFieldSize() const; 00076 00078 virtual int timeFieldSize() const; 00079 00081 virtual void setLabelSize(int size); 00082 virtual int labelSize() const; 00083 00085 virtual void setTimeSize(int size); 00086 virtual int timeSize() const; 00087 00089 virtual DtNetSaveMsg* netSaveMsg(); 00090 virtual const DtNetSaveMsg* netSaveMsg() const; 00091 00093 #ifdef DtIFSPEC1516 00094 virtual int minSize(char const * theLabel=NULL, 00095 rti1516::LogicalTime const * theTime=NULL) const; 00096 #elif defined(DtIFSPEC1516E) 00097 virtual int minSize(char const * theLabel=NULL, 00098 rti1516e::LogicalTime const * theTime=NULL) const; 00099 #else 00100 virtual int minSize(char const * theLabel=NULL, 00101 RTI::FedTime const * theTime=NULL) const; 00102 #endif 00103 00105 virtual DtSaveMsg* self() const; 00106 00107 protected: 00108 00109 char* myLabel; 00110 }; 00111 00112 00113 inline DtSaveMsg* DtSaveMsg::self() const 00114 { 00115 return const_cast<DtSaveMsg*>( this ); 00116 } 00117 00118 #endif