15 #ifdef DtUSE_UTILITIES_NAMESPACE
16 namespace DtUSE_UTILITIES_NAMESPACE
20 class DtInetUdpSockPimpl;
55 bool immediateOpen =
true );
77 virtual bool openSocket();
82 virtual bool closeSocket();
94 virtual bool bindToDevice(
const DtInetDevice* hostIf = NULL );
111 virtual bool connectToDestination();
115 virtual bool disconnect();
127 virtual int send( caddr_t packet,
size_t size,
DtU32 flags = 0 );
128 virtual int sendTo( caddr_t packet,
size_t size,
181 virtual unsigned descriptor()
const;
193 virtual bool setNonBlockingOption(
bool onOrOff );
194 virtual bool setSendBufferSize(
DtU32 size );
195 virtual bool setReceiveBufferSize(
DtU32 size );
196 virtual bool setBroadcastOption(
bool onOrOff );
197 virtual bool setReuseAddressOption(
bool onOrOff );
198 virtual bool setDoNotRouteOption(
bool onOrOff );
199 virtual bool setSendLowWatermark(
DtU32 size );
200 virtual bool setReceiveLowWatermark(
DtU32 size );
201 virtual bool setMcastDevice(
const DtInetAddr& devAddr );
204 virtual DtU32 getSendBufferSize();
205 virtual DtU32 getReceiveBufferSize();
206 virtual DtU32 getBytesAvailable();
207 virtual bool getBroadcastOption();
208 virtual bool getReuseAddressOption();
209 virtual bool getDoNotRouteOption();
210 virtual DtU32 getSendLowWatermark();
211 virtual DtU32 getReceiveLowWatermark();
222 virtual bool joinMulticastGroup(
const DtInetAddr& grpAddr,
224 virtual bool joinMulticastGroup(
const DtInetEndpoint& grpEndpoint,
226 virtual bool dropMulticastGroup(
const DtInetAddr& grpAddr,
228 virtual bool dropMulticastGroup(
const DtInetEndpoint& grpEndpoint,
232 virtual bool setMcastTtlOption(
DtU32 ttl );
237 virtual void* udpSocket();
243 virtual void* secondUdpSocket();
255 friend class DtInetUdpSockPimpl;
279 #ifdef DtUSE_UTILITIES_NAMESPACE
This file contains the declaration of the DtInetSocket base class.
DtInetSockRcvStatus
Socket state enumeration.
Definition: vlInetSocket.h:129
std::vector< DtInetBuffer * > DtInetBufferChain
Socket state enumeration.
Definition: vlInetSocket.h:105
Used to set and maintain time in a simulation.
Definition: vlTime.h:25
The DtInetSocket class provides a protocol independant, address family independant base class for TCP...
Definition: vlInetSocket.h:201
std::vector< DtInetMcastGroupIntfcBinding > DtInetMcastGroupBindings
Definition: vlInetUdpSocket.h:272
int recv(int s, char *buf, int bufLen, int flags)
std::pair< DtInetAddr, DtInetAddr > DtInetMcastGroupIntfcBinding
Associate the multicast group address with the host interface address the group is joined from...
Definition: vlInetUdpSocket.h:271
The DtInetEndpoint class provides a protocol independant, address family independent mechanism to rep...
Definition: vlInetEndpoint.h:33
Represents a IPv4 or IPv6 address.
Definition: vlInetAddr.h:36
Definition: vlInetDevice.h:101
void * myIoService
Definition: vlInetUdpSocket.h:259
void * mySecondUdpSocket
Definition: vlInetUdpSocket.h:264
DtInetMcastGroupBindings myMcastGroups
Definition: vlInetUdpSocket.h:273
void * myUdpSocket
Definition: vlInetUdpSocket.h:260
unsigned short DtU16
A 16 bit unsigned integer value.
Definition: vlMachineTypes.h:140
int send(int s, char *buf, int bufLen, int flags)
An abstract base class to represent a Socket Type.
Definition: vlInetUdpSocket.h:24
unsigned long DtU32
A 32 bit unsigned integer value.
Definition: vlMachineTypes.h:153
DtInetUdpSockPimpl * myAsyncPimpl
Definition: vlInetUdpSocket.h:256
#define DtDefaultSockOpts
Marks the Socket as Writable.
Definition: vlInetSocket.h:90
#define DT_DLL_VLUTIL
Definition: vlMachineTypes.h:109
DtClock myReceiveClock
Definition: vlInetUdpSocket.h:274