diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-11-01 22:17:39 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-11-01 22:17:39 +0000 |
commit | 53284e215e3d3351a7d7e9c4b68f14b427fb4377 (patch) | |
tree | 97236ece363cff48fd287c780db4290da39b02cb /ace/SOCK_IO.h | |
parent | 7b7c52ad2abd228138ba1a948d5e28bf6dc3b880 (diff) | |
download | ATCD-53284e215e3d3351a7d7e9c4b68f14b427fb4377.tar.gz |
ChangeLogTag:Wed Nov 1 14:11:48 2000 Carlos O'Ryan <coryan@uci.edu>
Diffstat (limited to 'ace/SOCK_IO.h')
-rw-r--r-- | ace/SOCK_IO.h | 119 |
1 files changed, 58 insertions, 61 deletions
diff --git a/ace/SOCK_IO.h b/ace/SOCK_IO.h index 0ad3ef62682..61fbace0715 100644 --- a/ace/SOCK_IO.h +++ b/ace/SOCK_IO.h @@ -1,18 +1,15 @@ /* -*- C++ -*- */ -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// ace -// -// = FILENAME -// SOCK_IO.h -// -// = AUTHOR -// Doug Schmidt -// -// ============================================================================ + +//============================================================================= +/** + * @file SOCK_IO.h + * + * $Id$ + * + * @author Doug Schmidt + */ +//============================================================================= + #ifndef ACE_SOCK_IO_H #define ACE_SOCK_IO_H @@ -24,119 +21,119 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +/** + * @class ACE_SOCK_IO + * + * @brief Defines the methods for the ACE socket wrapper I/O routines + * (e.g., send/recv). + * + * + * 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, + * EWOULDBLOCK will be returned 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. + */ class ACE_Export ACE_SOCK_IO : public ACE_SOCK { - // = TITLE - // Defines the methods for the ACE socket wrapper I/O routines - // (e.g., send/recv). - // - // = NOTES - // - // 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, - // EWOULDBLOCK will be returned 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. - // public: // = Initialization and termination methods. + /// Constructor. ACE_SOCK_IO (void); - // Constructor. + /// Destructor. ~ACE_SOCK_IO (void); - // Destructor. + /// Recv an <n> byte buffer from the connected socket. 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. + /// Recv an <n> byte buffer from the connected socket. ssize_t recv (void *buf, size_t n, const ACE_Time_Value *timeout = 0) const; - // Recv an <n> byte buffer from the connected socket. + /// Recv an <iovec> of size <n> from the connected socket. ssize_t recvv (iovec iov[], size_t n, const ACE_Time_Value *timeout = 0) const; - // Recv an <iovec> of size <n> from the connected socket. + /// Same as above. Deprecated. ssize_t recv (iovec iov[], size_t n, const ACE_Time_Value *timeout = 0) const; - // Same as above. Deprecated. + /** + * 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 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. + /// Same as above. Deprecated. ssize_t recv (iovec *io_vec, const ACE_Time_Value *timeout = 0) const; - // Same as above. Deprecated. + /// Recv <n> varargs messages to the connected socket. ssize_t recv (size_t n, ...) const; - // Recv <n> varargs messages to the connected socket. + /// Recv <n> bytes via Win32 <ReadFile> using overlapped I/O. ssize_t recv (void *buf, size_t n, ACE_OVERLAPPED *overlapped) const; - // Recv <n> bytes via Win32 <ReadFile> using overlapped I/O. + /// Send an <n> byte buffer to the connected socket. 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. + /// Send an <n> byte buffer to the connected socket. 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. + /// Send an <iovec> of size <n> to the connected socket. ssize_t sendv (const iovec iov[], size_t n, const ACE_Time_Value *timeout = 0) const; - // Send an <iovec> of size <n> to the connected socket. + /// Same as above. Deprecated. ssize_t send (const iovec iov[], size_t n, const ACE_Time_Value *timeout = 0) const; - // Same as above. Deprecated. + /// Send <n> varargs messages to the connected socket. ssize_t send (size_t n, ...) const; - // Send <n> varargs messages to the connected socket. + /// Send <n> bytes via Win32 <WriteFile> using overlapped I/O. ssize_t send (const void *buf, size_t n, ACE_OVERLAPPED *overlapped) const; - // Send <n> bytes via Win32 <WriteFile> using overlapped I/O. + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. }; #if !defined (ACE_LACKS_INLINE_FUNCTIONS) |