Implements evioChannel functionality for I/O to and from socket. More...
#include <evioSocketChannel.hxx>
Public Member Functions | |
| evioSocketChannel (int socFd, const string &mode="r", int size=100000) throw (evioException) | |
| Constructor opens socket for reading or writing. | |
| evioSocketChannel (int socFd, evioDictionary *dict, const string &mode="r", int size=100000) throw (evioException) | |
| Constructor opens socket for reading or writing. | |
| virtual | ~evioSocketChannel (void) |
| Destructor closes socket, deletes internal buffer. | |
| void | open (void) throw (evioException) |
| Opens channel for reading or writing. | |
| bool | read (void) throw (evioException) |
| Reads from socket. | |
| bool | read (uint32_t *myEventBuf, int length) throw (evioException) |
| Reads from socket into user-supplied event buffer. | |
| bool | readAlloc (uint32_t **buffer, uint32_t *bufLen) throw (evioException) |
| Reads from socket and allocates buffer as needed. | |
| bool | readNoCopy (void) throw (evioException) |
| Reads from socket using no copy mechanism. | |
| void | write (void) throw (evioException) |
| Writes to socket from internal buffer. | |
| void | write (const uint32_t *myEventBuf) throw (evioException) |
| Writes to socket from user-supplied buffer. | |
| void | write (const evioChannel &channel) throw (evioException) |
| Writes to socket from internal buffer of another evioChannel object. | |
| void | write (const evioChannel *channel) throw (evioException) |
| Writes from internal buffer of another evioChannel object. | |
| void | write (const evioChannelBufferizable &o) throw (evioException) |
| Writes from contents of evioChannelBufferizable object. | |
| void | write (const evioChannelBufferizable *o) throw (evioException) |
| Writes from contents of evioChannelBufferizable object. | |
| void | close (void) throw (evioException) |
| Closes channel. | |
| int | ioctl (const string &request, void *argp) throw (evioException) |
| For getting and setting evIoctl parameters. | |
| const uint32_t * | getBuffer (void) const throw (evioException) |
| Returns pointer to internal channel buffer. | |
| int | getBufSize (void) const |
| Returns internal channel buffer size. | |
| const uint32_t * | getNoCopyBuffer (void) const throw (evioException) |
| Returns pointer to no copy buffer. | |
| string | getMode (void) const |
| Returns channel I/O mode. | |
| int | getSocketFD (void) const throw (evioException) |
| Returns socket file descriptor. | |
| string | getSocketXMLDictionary (void) const |
| Returns XML dictionary read in from socket. | |
Implements evioChannel functionality for I/O to and from socket.
| evioSocketChannel::evioSocketChannel | ( | int | sockFD, | |
| const string & | m = "r", |
|||
| int | size = 100000 | |||
| ) | throw (evioException) |
Constructor opens socket for reading or writing.
| sockFD | Socket file descriptor | |
| m | I/O mode, "r" or "w" | |
| size | Internal event buffer size |
| evioSocketChannel::evioSocketChannel | ( | int | sockFD, | |
| evioDictionary * | dict, | |||
| const string & | m = "r", |
|||
| int | size = 100000 | |||
| ) | throw (evioException) |
Constructor opens socket for reading or writing.
| sockFD | Socket file descriptor | |
| dict | Dictionary | |
| m | I/O mode, "r" or "w" | |
| size | Internal event buffer size |
| evioSocketChannel::~evioSocketChannel | ( | void | ) | [virtual] |
Destructor closes socket, deletes internal buffer.
References close(), and evio::evioChannel::dictionary.
| void evioSocketChannel::close | ( | void | ) | throw (evioException) [virtual] |
| const uint32_t * evioSocketChannel::getBuffer | ( | void | ) | const throw (evioException) [virtual] |
Returns pointer to internal channel buffer.
Implements evio::evioChannel.
| int evioSocketChannel::getBufSize | ( | void | ) | const [virtual] |
Returns internal channel buffer size.
Implements evio::evioChannel.
| string evioSocketChannel::getMode | ( | void | ) | const |
Returns channel I/O mode.
| const uint32_t * evioSocketChannel::getNoCopyBuffer | ( | void | ) | const throw (evioException) [virtual] |
Returns pointer to no copy buffer.
Implements evio::evioChannel.
| int evioSocketChannel::getSocketFD | ( | void | ) | const throw (evioException) |
Returns socket file descriptor.
| string evioSocketChannel::getSocketXMLDictionary | ( | void | ) | const |
Returns XML dictionary read in from socket.
| int evioSocketChannel::ioctl | ( | const string & | request, | |
| void * | argp | |||
| ) | throw (evioException) [virtual] |
For getting and setting evIoctl parameters.
| request | String containing evIoctl parameters | |
| argp | Additional evIoctl parameter |
Implements evio::evioChannel.
| void evioSocketChannel::open | ( | void | ) | throw (evioException) [virtual] |
Opens channel for reading or writing.
For read, user-supplied dictionary overrides one received from socket.
Implements evio::evioChannel.
References evio::evioChannel::dictionary, and evio::evioDictionary::getDictionaryXML().
| bool evioSocketChannel::read | ( | uint32_t * | myBuf, | |
| int | length | |||
| ) | throw (evioException) [virtual] |
Reads from socket into user-supplied event buffer.
| myBuf | User-supplied buffer. length Length of buffer in 4-byte words. |
Implements evio::evioChannel.
| bool evioSocketChannel::read | ( | void | ) | throw (evioException) [virtual] |
Reads from socket.
Implements evio::evioChannel.
| bool evioSocketChannel::readAlloc | ( | uint32_t ** | buffer, | |
| uint32_t * | bufLen | |||
| ) | throw (evioException) [virtual] |
Reads from socket and allocates buffer as needed.
| buffer | Pointer to pointer to allocated buffer. | |
| len | Length of allocated buffer in 4-byte words. |
Note: user MUST free the allocated buffer!
Implements evio::evioChannel.
| bool evioSocketChannel::readNoCopy | ( | void | ) | throw (evioException) [virtual] |
Reads from socket using no copy mechanism.
Implements evio::evioChannel.
| void evioSocketChannel::write | ( | const evioChannelBufferizable * | o | ) | throw (evioException) [virtual] |
Writes from contents of evioChannelBufferizable object.
| o | Pointer to evioChannelBufferizable object that can serialize to socket |
Implements evio::evioChannel.
References write().
| void evioSocketChannel::write | ( | const evioChannelBufferizable & | o | ) | throw (evioException) [virtual] |
Writes from contents of evioChannelBufferizable object.
| o | evioChannelBufferizable object that can serialize to socket |
Implements evio::evioChannel.
References write().
| void evioSocketChannel::write | ( | const evioChannel * | channel | ) | throw (evioException) |
Writes from internal buffer of another evioChannel object.
| channel | Pointer to channel object |
References write().
| void evioSocketChannel::write | ( | const evioChannel & | channel | ) | throw (evioException) |
Writes to socket from internal buffer of another evioChannel object.
| channel | Channel object |
| void evioSocketChannel::write | ( | const uint32_t * | myBuf | ) | throw (evioException) [virtual] |
Writes to socket from user-supplied buffer.
| myBuf | Buffer containing event |
Implements evio::evioChannel.
| void evioSocketChannel::write | ( | void | ) | throw (evioException) [virtual] |
1.6.1