25 #ifdef DtUSE_UTILITIES_NAMESPACE
26 namespace DtUSE_UTILITIES_NAMESPACE
30 #define DtDEFAULT_DIS_PORT 3000
32 #define DtDIS_HEADER_PROTOCOL_VERSION_BYTE_OFFSET 0
33 #define DtDIS_HEADER_EXERCISE_IDENTIFIER_BYTE_OFFSET 1
34 #define DtDIS_HEADER_PDU_TYPE_BYTE_OFFSET 2
35 #define DtDIS_HEADER_PROTOCOL_FAMILY_BYTE_OFFSET 3
36 #define DtDIS_HEADER_TIMESTAMP_BYTE_OFFSET 4
37 #define DtDIS_HEADER_LENGTH_BYTE_OFFSET 8
38 #define DtDIS_HEADER_PDU_STATUS_BYTE_OFFSET 10
41 #define DtDIS_HEADER_CEI_QUERY_MASK 0x8
56 virtual void extendTest(
int n,
DtU32 *values);
57 virtual void reduceTest(
int n,
DtU32 *values);
63 virtual void clearList();
100 bool immediateOpen =
true,
101 bool suppressSelfReflectEnabled =
false );
112 virtual bool openSocket();
120 virtual bool closeSocket();
127 virtual int send( caddr_t packet,
size_t size,
DtU32 flags = 0 );
129 virtual int sendTo( caddr_t packet,
size_t size,
154 virtual void removeDestination(
const DtInetEndpoint& destination);
161 virtual bool setNonBlockingOption(
bool onOrOff );
162 virtual bool setSendBufferSize(
DtU32 size );
163 virtual bool setReceiveBufferSize(
DtU32 size );
164 virtual bool setBroadcastOption(
bool onOrOff );
165 virtual bool setReuseAddressOption(
bool onOrOff );
166 virtual bool setDoNotRouteOption(
bool onOrOff );
167 virtual bool setSendLowWatermark(
DtU32 size );
168 virtual bool setReceiveLowWatermark(
DtU32 size );
169 virtual bool setMcastDevice(
const DtInetAddr& devAddr );
170 virtual bool setMcastTtlOption(
DtU32 ttl );
201 virtual void setBundling(
int maxBundleSize,
int sizeOffset,
int sizeLength,
202 bool testDisHeader );
210 virtual bool setMaxBundleSize(
int size );
211 virtual int getMaxBundleSize();
212 virtual bool isBundling();
219 virtual void setMinPacketSize(
int size );
220 virtual int minPacketSize();
225 virtual void setBundleByteAlignment(
DtU32 size );
226 virtual DtU32 sendBundleByteAlignment();
228 virtual DtU32 receiveBundleByteAlignment(
int protocolVersion);
273 virtual void* disSendSocket();
297 static int suppressSelfReflect(
DtInetSocket* sock,
int size,
303 static int filterExercisePdus(
DtInetSocket* sock,
int size,
315 int hdrOffset, DtInetBufferChain::iterator current,
316 DtInetBufferChain::iterator end,
int* status,
bool& isCoupling,
bool expectAttributePdu =
false);
320 int hdrOffset, DtInetBufferChain::iterator current,
321 DtInetBufferChain::iterator end,
int* status,
int pduLengthAndPadding );
325 virtual DtInetBufferChain::iterator advanceToOffset(
DtU16& offset,
326 DtInetBufferChain::iterator chainIter, DtInetBufferChain::iterator chainEnd);
336 friend class DtDisSockPimpl;
389 return &myExerciseFilter;
394 return &myVersionFilter;
399 return &myKindFilter;
404 return &myAddrFilter;
408 #ifdef DtUSE_UTILITIES_NAMESPACE