ACE  6.4.2
Public Member Functions | Public Attributes | List of all members
ACE_SOCK_IO Class Reference

Defines the methods for the ACE socket wrapper I/O routines described below. More...

#include <SOCK_IO.h>

Inheritance diagram for ACE_SOCK_IO:
Inheritance graph
[legend]
Collaboration diagram for ACE_SOCK_IO:
Collaboration graph
[legend]

Public Member Functions

 ACE_SOCK_IO (void)
 Constructor. More...
 
 ~ACE_SOCK_IO (void)
 Destructor. More...
 
ssize_t recv (void *buf, size_t n, int flags, const ACE_Time_Value *timeout=0) const
 Recv an n byte buffer from the connected socket. More...
 
ssize_t recv (void *buf, size_t n, const ACE_Time_Value *timeout=0) const
 Recv an n byte buffer from the connected socket. More...
 
ssize_t recvv (iovec iov[], int n, const ACE_Time_Value *timeout=0) const
 Recv an <iovec> of size n from the connected socket. More...
 
ssize_t recvv (iovec *io_vec, const ACE_Time_Value *timeout=0) const
 
ssize_t recv (size_t n,...) const
 Recv n varargs messages to the connected socket. More...
 
ssize_t recv (void *buf, size_t n, ACE_OVERLAPPED *overlapped) const
 Recv n bytes via Win32 ReadFile using overlapped I/O. More...
 
ssize_t send (const void *buf, size_t n, int flags, const ACE_Time_Value *timeout=0) const
 Send an n byte buffer to the connected socket. More...
 
ssize_t send (const void *buf, size_t n, const ACE_Time_Value *timeout=0) const
 Send an n byte buffer to the connected socket. More...
 
ssize_t sendv (const iovec iov[], int n, const ACE_Time_Value *timeout=0) const
 Send an iovec of size n to the connected socket. More...
 
ssize_t send (size_t n,...) const
 Send n varargs messages to the connected socket. More...
 
ssize_t send (const void *buf, size_t n, ACE_OVERLAPPED *overlapped) const
 Send n bytes via Win32 <WriteFile> using overlapped I/O. More...
 
void dump (void) const
 Dump the state of an object. More...
 
- Public Member Functions inherited from ACE_SOCK
int set_option (int level, int option, void *optval, int optlen) const
 Wrapper around the setsockopt system call. More...
 
int get_option (int level, int option, void *optval, int *optlen) const
 Wrapper around the getsockopt system call. More...
 
int close (void)
 
int get_local_addr (ACE_Addr &) const
 
int get_remote_addr (ACE_Addr &) const
 
void dump (void) const
 Dump the state of an object. More...
 
int open (int type, int protocol_family, int protocol, int reuse_addr)
 Wrapper around the BSD-style socket system call (no QoS). More...
 
int open (int type, int protocol_family, int protocol, ACE_Protocol_Info *protocolinfo, ACE_SOCK_GROUP g, u_long flags, int reuse_addr)
 Wrapper around the QoS-enabled WSASocket function. More...
 
- Public Member Functions inherited from ACE_IPC_SAP
int control (int cmd, void *) const
 Interface for <ioctl>. More...
 
int enable (int value) const
 
int disable (int value) const
 
ACE_HANDLE get_handle (void) const
 Get the underlying handle. More...
 
void set_handle (ACE_HANDLE handle)
 Set the underlying handle. More...
 
void dump (void) const
 Dump the state of an object. More...
 

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 
- Public Attributes inherited from ACE_SOCK
 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 
- Public Attributes inherited from ACE_IPC_SAP
 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ACE_SOCK
 ACE_SOCK (int type, int protocol_family, int protocol=0, int reuse_addr=0)
 
 ACE_SOCK (int type, int protocol_family, int protocol, ACE_Protocol_Info *protocolinfo, ACE_SOCK_GROUP g, u_long flags, int reuse_addr)
 
 ACE_SOCK (void)
 
 ~ACE_SOCK (void)
 Protected destructor. More...
 
- Protected Member Functions inherited from ACE_IPC_SAP
 ACE_IPC_SAP (void)
 Default constructor. More...
 
 ~ACE_IPC_SAP (void)
 Protected destructor. More...
 

Detailed Description

Defines the methods for the ACE socket wrapper I/O routines described below.

If timeout == 0, then the call behaves as a normal send/recv call, i.e., for blocking sockets, the call will block until action is possible; for non-blocking sockets, -1 will be returned with errno == EWOULDBLOCK if no action is immediately possible. If timeout != 0, the call will wait until the relative time specified in *timeout elapses. Errors are reported by -1 and 0 return values. If the operation times out, -1 is returned with errno == ETIME. If it succeeds the number of bytes transferred is returned. Methods with the extra flags argument will always result in send getting called. Methods without the extra flags argument will result in send getting called on Win32 platforms, and write getting called on non-Win32 platforms.

Constructor & Destructor Documentation

ACE_SOCK_IO::ACE_SOCK_IO ( void  )
inline

Constructor.

ACE_SOCK_IO::~ACE_SOCK_IO ( void  )
inline

Destructor.

Member Function Documentation

void ACE_SOCK_IO::dump ( void  ) const

Dump the state of an object.

ssize_t ACE_SOCK_IO::recv ( void *  buf,
size_t  n,
int  flags,
const ACE_Time_Value timeout = 0 
) const
inline

Recv an n byte buffer from the connected socket.

ssize_t ACE_SOCK_IO::recv ( void *  buf,
size_t  n,
const ACE_Time_Value timeout = 0 
) const
inline

Recv an n byte buffer from the connected socket.

ssize_t ACE_SOCK_IO::recv ( size_t  n,
  ... 
) const

Recv n varargs messages to the connected socket.

ssize_t ACE_SOCK_IO::recv ( void *  buf,
size_t  n,
ACE_OVERLAPPED overlapped 
) const
inline

Recv n bytes via Win32 ReadFile using overlapped I/O.

ssize_t ACE_SOCK_IO::recvv ( iovec  iov[],
int  n,
const ACE_Time_Value timeout = 0 
) const
inline

Recv an <iovec> of size n from the connected socket.

ssize_t ACE_SOCK_IO::recvv ( iovec *  io_vec,
const ACE_Time_Value timeout = 0 
) const

Allows a client to read from a socket without having to provide a buffer to read. This method determines how much data is in the socket, allocates a buffer of this size, reads in the data, and returns the number of bytes read. The caller is responsible for deleting the member in the <iov_base> field of io_vec using delete [] io_vec->iov_base.

ssize_t ACE_SOCK_IO::send ( const void *  buf,
size_t  n,
int  flags,
const ACE_Time_Value timeout = 0 
) const
inline

Send an n byte buffer to the connected socket.

ssize_t ACE_SOCK_IO::send ( const void *  buf,
size_t  n,
const ACE_Time_Value timeout = 0 
) const
inline

Send an n byte buffer to the connected socket.

ssize_t ACE_SOCK_IO::send ( size_t  n,
  ... 
) const

Send n varargs messages to the connected socket.

ssize_t ACE_SOCK_IO::send ( const void *  buf,
size_t  n,
ACE_OVERLAPPED overlapped 
) const
inline

Send n bytes via Win32 <WriteFile> using overlapped I/O.

ssize_t ACE_SOCK_IO::sendv ( const iovec  iov[],
int  n,
const ACE_Time_Value timeout = 0 
) const
inline

Send an iovec of size n to the connected socket.

Member Data Documentation

ACE_SOCK_IO::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.


The documentation for this class was generated from the following files: