oasys::FdIOClient Class Reference

#include <FdIOClient.h>

Inheritance diagram for oasys::FdIOClient:

oasys::IOClient oasys::Logger oasys::IOHandlerBase oasys::FileIOClient List of all members.

Detailed Description

IOClient which uses pure file descriptors.

Definition at line 30 of file FdIOClient.h.

Public Member Functions

 FdIOClient (int fd, Notifier *intr=0)
 
Parameters:
fd File descriptor to interact with

void set_fd (int fd)
 Explicitly set the file descriptor.
int fd ()
 Accessor for the file descriptor.
virtual int read (char *bp, size_t len)
 Virtual from IOClient.
virtual int readv (const struct iovec *iov, int iovcnt)
 Virtual from IOClient.
virtual int write (const char *bp, size_t len)
 Virtual from IOClient.
virtual int writev (const struct iovec *iov, int iovcnt)
 Virtual from IOClient.
virtual int readall (char *bp, size_t len)
 Virtual from IOClient.
virtual int writeall (const char *bp, size_t len)
 Virtual from IOClient.
virtual int readvall (const struct iovec *iov, int iovcnt)
 Virtual from IOClient.
virtual int writevall (const struct iovec *iov, int iovcnt)
 Virtual from IOClient.
virtual int timeout_read (char *bp, size_t len, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_readv (const struct iovec *iov, int iovcnt, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_readall (char *bp, size_t len, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_readvall (const struct iovec *iov, int iovcnt, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_write (const char *bp, size_t len, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_writev (const struct iovec *iov, int iovcnt, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_writeall (const char *bp, size_t len, int timeout_ms)
 Virtual from IOClient.
virtual int timeout_writevall (const struct iovec *iov, int iovcnt, int timeout_ms)
 Virtual from IOClient.
virtual int get_nonblocking (bool *nonblockingp)
 Virtual from IOClient.
virtual int set_nonblocking (bool nonblocking)
 Virtual from IOClient.

Protected Attributes

int fd_


Constructor & Destructor Documentation

oasys::FdIOClient::FdIOClient ( int  fd,
Notifier intr = 0 
)

Parameters:
fd File descriptor to interact with

Parameters:
intr Optional notifier to use to interrupt blocked I/O

Definition at line 24 of file FdIOClient.cc.


Member Function Documentation

void oasys::FdIOClient::set_fd ( int  fd  )  [inline]

Explicitly set the file descriptor.

Definition at line 37 of file FdIOClient.h.

References fd_.

Referenced by dtn::BundlePayload::~BundlePayload().

int oasys::FdIOClient::fd (  )  [inline]

Accessor for the file descriptor.

Definition at line 40 of file FdIOClient.h.

References fd_.

Referenced by dtn::BundlePayload::init(), dtn::BundlePayload::init_from_store(), and dtn::BundlePayload::pin_file().

int oasys::FdIOClient::read ( char *  bp,
size_t  len 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 31 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::read().

Referenced by oasys::FileIOClient::copy_contents().

int oasys::FdIOClient::readv ( const struct iovec *  iov,
int  iovcnt 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 37 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::readv().

int oasys::FdIOClient::write ( const char *  bp,
size_t  len 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 55 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::write().

int oasys::FdIOClient::writev ( const struct iovec *  iov,
int  iovcnt 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 61 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::writev().

int oasys::FdIOClient::readall ( char *  bp,
size_t  len 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 43 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::readall().

Referenced by dtn::BundlePayload::read_data().

int oasys::FdIOClient::writeall ( const char *  bp,
size_t  len 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 67 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::writeall().

Referenced by oasys::FileIOClient::copy_contents(), dtn::APIClient::handle_recv(), and dtn::BundlePayload::internal_write().

int oasys::FdIOClient::readvall ( const struct iovec *  iov,
int  iovcnt 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 49 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::readvall().

int oasys::FdIOClient::writevall ( const struct iovec *  iov,
int  iovcnt 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 73 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::writevall().

int oasys::FdIOClient::timeout_read ( char *  bp,
size_t  len,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 79 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_read().

int oasys::FdIOClient::timeout_readv ( const struct iovec *  iov,
int  iovcnt,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 86 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_readv().

int oasys::FdIOClient::timeout_readall ( char *  bp,
size_t  len,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 94 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_readall().

int oasys::FdIOClient::timeout_readvall ( const struct iovec *  iov,
int  iovcnt,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 101 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_readvall().

int oasys::FdIOClient::timeout_write ( const char *  bp,
size_t  len,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 109 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_write().

int oasys::FdIOClient::timeout_writev ( const struct iovec *  iov,
int  iovcnt,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 116 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_writev().

int oasys::FdIOClient::timeout_writeall ( const char *  bp,
size_t  len,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 124 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_writeall().

int oasys::FdIOClient::timeout_writevall ( const struct iovec *  iov,
int  iovcnt,
int  timeout_ms 
) [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 131 of file FdIOClient.cc.

References fd_, oasys::IOHandlerBase::get_notifier(), oasys::Logger::logpath_, and oasys::IO::timeout_writevall().

int oasys::FdIOClient::get_nonblocking ( bool nonblockingp  )  [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 139 of file FdIOClient.cc.

References fd_, oasys::IO::get_nonblocking(), and oasys::Logger::logpath_.

int oasys::FdIOClient::set_nonblocking ( bool  nonblocking  )  [virtual]

Virtual from IOClient.

Implements oasys::IOClient.

Definition at line 145 of file FdIOClient.cc.

References fd_, oasys::Logger::logpath_, and oasys::IO::set_nonblocking().


Member Data Documentation

int oasys::FdIOClient::fd_ [protected]

Definition at line 72 of file FdIOClient.h.

Referenced by oasys::FileIOClient::close(), fd(), get_nonblocking(), oasys::FileIOClient::is_open(), oasys::FileIOClient::lseek(), oasys::FileIOClient::mkstemp(), oasys::FileIOClient::open(), read(), readall(), readv(), readvall(), oasys::FileIOClient::reopen(), set_fd(), set_nonblocking(), timeout_read(), timeout_readall(), timeout_readv(), timeout_readvall(), timeout_write(), timeout_writeall(), timeout_writev(), timeout_writevall(), oasys::FileIOClient::truncate(), write(), writeall(), writev(), writevall(), and oasys::FileIOClient::~FileIOClient().


The documentation for this class was generated from the following files:
Generated on Thu Jun 7 12:54:35 2007 for DTN Reference Implementation by  doxygen 1.5.1