|
blocxx
|
#include <IOIFC.hpp>
Public Types | |
| enum | ErrorAction { E_THROW_ON_ERROR , E_RETURN_ON_ERROR } |
Public Member Functions | |
| virtual | ~IOIFC () |
| virtual int | read (void *dataIn, int dataInLen, ErrorAction errorAsException=E_RETURN_ON_ERROR)=0 |
| Read a specified number of bytes from the device that is exposing the IOIFC interface. | |
| virtual int | write (const void *dataOut, int dataOutLen, ErrorAction errorAsException=E_RETURN_ON_ERROR)=0 |
| Write a specified number of bytes to the device that is exposing the IOIFC interface. | |
|
pure virtual |
Read a specified number of bytes from the device that is exposing the IOIFC interface.
| dataIn | A pointer to a location in memory to put the bytes that have been read. |
| dataInLen | The number of bytes being requested from the device. |
| errorAsException | If true and an error occurs durring the read operation, then throw an exception. |
| An | exception will be thrown upon an error condition if errorAsException is true. |
Implemented in BLOCXX_NAMESPACE::PosixUnnamedPipe, BLOCXX_NAMESPACE::Socket, and BLOCXX_NAMESPACE::SocketBaseImpl.
Referenced by BLOCXX_NAMESPACE::IOIFCStreamBuffer::buffer_from_device(), BLOCXX_NAMESPACE::Exec::processInputOutput(), BLOCXX_NAMESPACE::UnnamedPipe::readAll(), BLOCXX_NAMESPACE::UnnamedPipe::readInt(), and BLOCXX_NAMESPACE::UnnamedPipe::readString().
|
pure virtual |
Write a specified number of bytes to the device that is exposing the IOIFC interface.
| dataOut | A pointer to a location in memory that contains the bytes that will be written to the device. |
| dataOutLen | The length of the data pointed to by the dataOut param. |
| errorAsException | If true and an error occurs durring the write operation, then throw an exception. |
| An | exception will be thrown upon an error condition if errorAsException is true. |
Implemented in BLOCXX_NAMESPACE::PosixUnnamedPipe, BLOCXX_NAMESPACE::Socket, and BLOCXX_NAMESPACE::SocketBaseImpl.
Referenced by BLOCXX_NAMESPACE::IOIFCStreamBuffer::buffer_to_device(), BLOCXX_NAMESPACE::Exec::processInputOutput(), BLOCXX_NAMESPACE::UnnamedPipe::writeInt(), and BLOCXX_NAMESPACE::UnnamedPipe::writeString().