![]() |
MAK RTIspy API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 2008 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: assistantFederateStateMsg.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 *********************************************************************/ 00008 00009 #ifndef DtAssistantFederateStateMsg_H_ 00010 #define DtAssistantFederateStateMsg_H_ 00011 00015 00016 #include <vlutil/vlString.h> 00017 #include <vlutil/vlUtil.h> 00018 00019 #include "rtiVersion.h" 00020 #include "assistantMsg.h" 00021 #include "netAssistantFederateStateMsg.h" 00022 00023 class DtRtiAssistantPeer; 00024 class DtRtiAssistantServer; 00025 class DtAssistantFederateStateMsg; 00026 class MAKRti::DtInetAddr; 00027 00028 typedef void (*DtAssistantFederateStateCb)(const DtAssistantFederateStateMsg& inter, void* usr); 00029 00034 class DT_DLL_ASSISTANT DtAssistantFederateStateMsg : public DtAssistantMsg 00035 { 00036 public: 00037 00039 DtAssistantFederateStateMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00040 00041 DtAssistantFederateStateMsg(const DtNetAssistantFederateStateMsg* netRepMsg, 00042 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00043 00045 virtual ~DtAssistantFederateStateMsg(); 00046 00048 virtual DtAssistantMsg* clone(bool copy = true) const; 00049 00051 virtual unsigned long connectionId() const; 00052 00054 virtual void setConnectionId( unsigned long connId ); 00055 00057 virtual unsigned int federateHandle() const; 00058 00060 virtual void setFederateHandle( unsigned int handle ); 00061 00063 virtual MAKRti::DtInetAddr federateHostIp() const; 00064 00066 virtual void setFederateHostIp( const MAKRti::DtInetAddr& ip ); 00067 00069 virtual MAKRti::DtInetAddr webServerIp() const; 00070 00072 virtual void setWebServerIp( const MAKRti::DtInetAddr& ip ); 00073 00075 virtual unsigned int webServerPort() const; 00076 00078 virtual void setWebServerPort( unsigned int port ); 00079 00081 virtual bool isTestEnabled() const; 00082 00084 virtual void setIsTestEnabled( bool enabled ); 00085 00087 virtual bool isTestInProgress() const; 00088 00090 virtual void setIsTestInProgress( bool inProgress ); 00091 00093 virtual bool isContinuousTest() const; 00094 00096 virtual void setIsContinuousTest( bool continuous ); 00097 00099 virtual unsigned int numInitiatedTests() const; 00100 00102 virtual void setNumInitiatedTests( unsigned int num ); 00103 00105 virtual unsigned int numTestReports() const; 00106 00108 virtual void setNumTestReports( unsigned int num ); 00109 00111 virtual bool isReconnecting() const; 00112 00114 virtual void setIsReconnecting( bool reconnecting ); 00115 00117 virtual bool isDisconnected() const; 00118 00120 virtual void setIsDisconnected( bool disconnected ); 00121 00123 virtual bool isRemoval() const; 00124 00126 virtual void setIsRemoval( bool remove ); 00127 00129 virtual DtHlaVersionId hlaVersion() const; 00130 00132 virtual void setHlaVersion( DtHlaVersionId version ); 00133 00135 virtual MAKRti::DtString federationName() const; 00136 00138 virtual void setFederationName( const MAKRti::DtString& name ); 00139 00141 virtual MAKRti::DtString federateType() const; 00142 00144 virtual void setFederateType( const MAKRti::DtString& type ); 00145 00147 virtual MAKRti::DtString federateName() const; 00148 00150 virtual void setFederateName( const MAKRti::DtString& name ); 00151 00153 virtual MAKRti::DtString federateHostName() const; 00154 00156 virtual void setFederateHostName( const MAKRti::DtString& name ); 00157 00159 virtual void printData() const; 00160 00161 public: 00162 00164 static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial, 00165 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00166 00167 static DtAssistantMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00168 00171 static void addCallback(DtRtiAssistantServer* conn, 00172 DtAssistantFederateStateCb cb, void* usr); 00173 static void removeCallback(DtRtiAssistantServer* conn, 00174 DtAssistantFederateStateCb cb, void* usr); 00175 00178 static void addCallback(DtRtiAssistantPeer* conn, 00179 DtAssistantFederateStateCb cb, void* usr); 00180 static void removeCallback(DtRtiAssistantPeer* conn, 00181 DtAssistantFederateStateCb cb, void* usr); 00182 00183 protected: 00184 00186 virtual DtNetAssistantFederateStateMsg* netAssistantFederateStateMsg(); 00187 virtual const DtNetAssistantFederateStateMsg* netAssistantFederateStateMsg() const; 00188 00190 virtual DtAssistantMsgKind internalMsgKind(); 00191 00193 virtual int minSize() const; 00194 00196 virtual void setFederationNameSize( unsigned long size ); 00197 virtual unsigned long federationNameSize() const; 00198 00200 virtual const char* federationNamePtr() const; 00201 virtual char* federationNamePtr(); 00202 00204 virtual void setFederateTypeSize( unsigned long size ); 00205 virtual unsigned long federateTypeSize() const; 00206 00208 virtual const char* federateTypePtr() const; 00209 virtual char* federateTypePtr(); 00210 00212 virtual void setFederateNameSize( unsigned long size ); 00213 virtual unsigned long federateNameSize() const; 00214 00216 virtual const char* federateNamePtr() const; 00217 virtual char* federateNamePtr(); 00218 00220 virtual void setFederateHostNameSize( unsigned long size ); 00221 virtual unsigned long federateHostNameSize() const; 00222 00224 virtual const char* federateHostNamePtr() const; 00225 virtual char* federateHostNamePtr(); 00226 00227 }; 00228 00229 #endif