9 #ifndef rtiAssistantServer_H_
10 #define rtiAssistantServer_H_
20 #include <vlutil/vlBaseMsg.h>
21 #include <vlutil/vlUtil.h>
22 #include <vlutil/vlTime.h>
23 #include <vlutil/vlPrint.h>
56 const MAKRti::DtInetAddr& networkInterface = MAKRti::DtInetAddr() );
68 virtual void addMsgCallback(
DtAssistantMsgKind msgKind, DtAssistantMsgCbMgr::DtCallbackFcn fcn,
70 virtual void removeMsgCallback(
DtAssistantMsgKind msgKind, DtAssistantMsgCbMgr::DtCallbackFcn fcn,
72 virtual void addWildcardMsgCallback(DtAssistantMsgCbMgr::DtCallbackFcn fcn,
74 virtual void removeWildcardMsgCallback(DtAssistantMsgCbMgr::DtCallbackFcn fcn,
86 virtual bool tick(
unsigned int timeout = 0 );
89 virtual unsigned int numConnections()
const;
92 virtual void sendMsgOnConn(
int compId,
const DtAssistantMsg& msg );
98 virtual void sendConnMsg(
int compId,
bool disconnect =
false,
99 const MAKRti::DtString& display = MAKRti::DtString::nullString() );
106 virtual void sendLicRespMsg(
int compId,
bool runUnlicensed,
107 const MAKRti::DtString& server,
int port,
bool accepted );
110 virtual void sendAssistantCommandResponseMsg(
111 int compId,
const MAKRti::DtString& formattedData );
114 virtual void sendNtfyLvlUpdateMsg(
int compId, DtNotifyLevelType
notifyLevel );
118 virtual void sendLatencyTestRequestMsg(
int compId,
bool runTest,
bool continuous,
119 bool shouldHalt,
bool observing,
unsigned int interactionPeriod,
120 unsigned int numInteractions,
unsigned int payloadBytes,
121 unsigned long federationHandle = 0,
122 unsigned long initFedHandle = 0 );
126 virtual void sendNetworkTestEnableMsg(
int compId,
int federationHdl,
bool enable );
129 virtual void sendLogEnableMsg(
int compId,
bool enable );
133 virtual void sendObserveRtiexecMsg(
int compId,
bool isObserved,
134 unsigned int timeStateIntervalMs );
138 virtual void sendObserveRtiexecLogMsg(
int connId,
bool isObserved );
142 virtual void sendObserveRtiForwarderMsg(
int compId,
bool isObserved,
143 unsigned int timeStateIntervalMs,
int defunctRemovalTime );
147 virtual void sendSingleObserveRtiExecMsg(
int compId );
151 virtual void sendSingleObserveForwarderMsg(
int compId );
154 virtual void sendFederateResignMsg(
int compId,
int federationHdl,
int federateHdl );
157 virtual void sendFederationDestroyMsg(
int compId,
int federationHdl );
160 virtual void sendDeleteFederateMsg(
int compId, DtU16 fedexHandle, DtU16 fedHandle );
163 virtual void sendRidParamsRequestMsg(
int compId );
167 virtual void sendLogRequestMsg(
int compId,
unsigned maxLogSize );
172 int compId,
bool observe =
false,
unsigned int interval = 0);
176 virtual void sendExitMsg(
int compId = -1 );
180 virtual void sendDoNotWaitForForwardersMsg(
int compId );
187 virtual void sendSignalTickIntervalMsg(
int compId,
float signalTickInterval );
191 virtual int currentCompId()
const;
194 virtual void closeConn(
int compId );
197 virtual int port()
const;
200 virtual DtU32 maxMsgSize()
const;
203 static void tcpSocketAdditionCb(
DtTcpMsgSocket* sock,
void* usr );
204 static void tcpSocketRemovalCb(
DtTcpMsgSocket* sock,
void* usr );
206 virtual const DtInetAddr& getNetworkAddr();
210 void enableMsgDiagnostics(
bool enable );
220 virtual void testConnections();
224 virtual bool readAndProcess( DtTime maxTimePerSocket );
231 virtual std::auto_ptr<DtAssistantMsg> netRead(
DtTcpMsgSocket* sock,
int *retCode)
const;
305 bool myDiagnosticsEnabled;