![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 2006 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: tcpForwarder__vl__.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *********************************************************************/ 00008 #ifndef tcpForwarder__vl___H_ 00009 #define tcpForwarder__vl___H_ 00010 00019 00020 #include <vlutil/vlMachineTypes.h> 00021 #include <vlutil/vlNetTypes.h> 00022 #include <vlutil/vlUtil.h> 00023 #include <tcpMsgSocketMgr.h> 00024 #include "rtiMsConfig.h" 00025 00026 #ifdef DtUSE_UTILITIES_NAMESPACE 00027 namespace DtUSE_UTILITIES_NAMESPACE 00028 { 00029 #endif 00030 00031 class DtClock; 00032 class DtInetAddr; 00033 00037 class DT_DLL_FORWARDER DtTcpForwarder__vl__ 00038 { 00039 public: 00040 00043 DtTcpForwarder__vl__(int port, 00044 const DtInetAddr& networkInterface=DtInetAddr::inaddrAny()); 00045 00048 DtTcpForwarder__vl__(); 00049 00051 virtual ~DtTcpForwarder__vl__(); 00052 00053 private: 00054 00056 DtTcpForwarder__vl__(const DtTcpForwarder__vl__ &); 00057 00059 DtTcpForwarder__vl__& operator=(const DtTcpForwarder__vl__ &); 00060 00061 public: 00063 virtual void sendToAll(caddr_t packet, size_t size); 00064 00070 virtual void readAndForward( 00071 DtTime maxTimeOverAll, DtTime maxTimePerSocket); 00072 00076 virtual void readAndForward(DtTcpMsgSocket* sock, DtTime stopTime); 00077 00079 virtual DtTcpMsgSocketMgr* socketMgr(); 00080 00081 protected: 00082 00084 DtTcpMsgSocketMgr* mySocketMgr; 00085 00087 DtClock myClock; 00088 00090 DtTcpMsgSocket* myBeginSock; 00091 }; 00092 00093 00094 #ifdef DtUSE_UTILITIES_NAMESPACE 00095 } // end of namespace DtUSE_UTILITIES_NAMESPACE 00096 #endif 00097 00098 #endif