15 #include <vlutil/vlConfig.h>
25 #include <sys/types.h>
31 #ifdef DtUSE_UTILITIES_NAMESPACE
32 namespace DtUSE_UTILITIES_NAMESPACE
48 #define DtDEFAULT_MAX_PACKET_SIZE 15000
49 #define DtDEFAULT_PORT 3000
51 #ifdef DtUSE_UTILITIES_NAMESPACE
57 #define DtSOCKET_PACKET 1
58 #define DtSOCKET_NO_PACKET 0
59 #define DtSOCKET_SERVER_MSG -1
60 #define DtSOCKET_FILTERED_PACKET -2
61 #define DtSOCKET_FILTERED_BY_PORT -3
91 virtual void extendTest(
int n,
DtU32 *values);
92 virtual void reduceTest(
int n,
DtU32 *values);
94 virtual bool evalTest(
char *buf,
int offset,
DtFilterType type);
98 virtual void clearList();
128 virtual int DtSend(caddr_t packet,
size_t size,
134 virtual int sendTo(caddr_t packet,
size_t size,
150 virtual int DtRecv(caddr_t *buffptr,
int *status=0) = 0;
153 virtual int DtRecv(caddr_t buff,
size_t) = 0;
170 virtual void setReceiveBufferSize(
int newsize);
175 virtual void setSendBufferSize(
int newsize);
177 virtual void setBundling(
int maxSize);
178 virtual int isBundling();
179 virtual void setUnbundling(
int);
182 virtual int DtReportPktsRcvd(
void);
183 virtual void DtBecomeNonBlocking(
void);
184 virtual void notifyMe();
188 virtual int setMcastTtl(
int);
204 virtual int readFd();
205 virtual int writeFd();
206 virtual bool isOk()
const;
208 static void initializeNetwork();
212 static void setQuietSockets(
bool quietVal);
213 static bool areQuietSockets();
218 static void winInit();
219 static void winClose();
220 static int theWindowsInitializedCount;
221 static DtMutex theWindowsInitMutex;
223 static bool theAreQuietSockets;
228 static int getConfig(
const char* device,
int sock, ifconf* ifc);
261 bool use_async =
false);
273 #ifdef DtUSE_UTILITIES_NAMESPACE
277 #define vlSocket_inl_
278 #include "vlSocket.inl"
DtU32 DtIpv4Addr
Definition: vlUtil.h:330
This file contains the declaration of DtMutex.
DT_DLL_NETCOMPAT void DtSetMaxPacketSize(int size)
Sets the maximum size for a packet to be sent through a DtSocket class.
DtSocket provides a low level interface for packet I/O with VR-Link applications. ...
Definition: vlSocket.h:110
This file contains the declaration of DtList and DtListItem.
std::vector< char > Buffer
Definition: vlSocket.h:234
DT_DLL_NETCOMPAT DtSocket * DtNewDfltSocket(int port, DtIpv4Addr destAddr=0, bool use_async=false)
DtTestOperator
Definition: vlSocket.h:65
error during flush
Definition: vlSocket.h:74
void setTest(DtTestOperator op, DtU32 value)
Definition: vlSocket.h:86
DtList values
Definition: vlSocket.h:100
Definition: vlSocket.h:68
int mySockFd
Definition: vlSocket.h:241
DtFilterTest()
Definition: vlSocket.h:82
int pkts_rcvd
Definition: vlSocket.h:198
DtFlushStatus
Definition: vlSocket.h:71
DtFilterTest myAddrFilter
Definition: vlSocket.h:256
std::map< DtIpv4Addr, Buffer > BufferMap
Definition: vlSocket.h:235
int myBlockingFlag
Definition: vlSocket.h:197
Definition: vlSocket.h:79
DtFilterTest myVersionFilter
Definition: vlSocket.h:253
void extendTest(DtU32 value)
Definition: vlSocket.h:87
int accept(int s, struct sockaddr *addr, int *addrlen)
DtList is deprecated, please use std::list<T>.
Definition: vlList.h:71
const DtIpv4Addr DtUSE_DEFAULT_IP_ADDR
Definition: vlSocket.h:54
= 0, buffered data remains to be flushed
Definition: vlSocket.h:75
instances of DtMutex are used to provide a platform independent mutual exclusion mechanism ...
Definition: vlMutex.h:31
Definition: vlSocket.h:65
Definition: vlSocket.h:65
DtTestOperator testOp
Definition: vlSocket.h:99
DT_DLL_NETCOMPAT int DtMaxPacketSize()
The maximum size for a packet, by default set to DtDEFAULT_MAX_PACKET_SIZE.
void reduceTest(DtU32 value)
Definition: vlSocket.h:88
Definition: vlSocket.h:68
DtFilterTest myExerciseFilter
Definition: vlSocket.h:254
DtFilterType
Definition: vlSocket.h:68
DtFilterTest myKindFilter
Definition: vlSocket.h:255
BufferMap myBufferMap
Definition: vlSocket.h:237
#define DT_DLL_NETCOMPAT
Definition: vlMachineTypes.h:111
int myBundlingFlag
Definition: vlSocket.h:239
Definition: vlSocket.h:73
unsigned long DtU32
A 32 bit unsigned integer value.
Definition: vlMachineTypes.h:153
provides basic Operating Independent Methods useful to a federate
virtual ~DtFilterTest()
Definition: vlSocket.h:83
int myMaxBundleSize
Definition: vlSocket.h:240
void disableTest()
Definition: vlSocket.h:85