|
wibble
0.1.28
|
Buffer whose starting can be moved back and forth, useful to decapsulate stacked network packets. More...
#include <netbuffer.h>


Public Member Functions | |
| NetBuffer () throw () | |
| NetBuffer (size_t size) | |
| NetBuffer (void *buf, size_t size, bool own=true) | |
| NetBuffer (const void *buf, size_t size) | |
| NetBuffer (const Buffer &buf) throw () | |
| NetBuffer (const NetBuffer &buf) throw () | |
| NetBuffer & | operator= (const Buffer &buf) |
| NetBuffer & | operator= (const NetBuffer &buf) |
| const void * | data (size_t ofs=0) const throw () |
| Return a pointer to the buffer. | |
| void * | data (size_t ofs=0) throw () |
| Return a pointer to the buffer. | |
| size_t | size () const throw () |
| Return the buffer size. | |
| template<class T > | |
| bool | fits (size_t ofs=0) const throw () |
| Check if the buffer is long enough to contain a structure T at the given offset. | |
| template<class T > | |
| const T * | cast (size_t ofs=0) const throw (wibble::exception::Consistency) |
| Access the buffer contents as a structure T at the given offset. | |
| NetBuffer | operator+ (size_t ofs) throw (wibble::exception::Consistency) |
| Return another NetBuffer starting ofs bytes from the beginning of this one. | |
| const NetBuffer | after (size_t ofs) const throw (wibble::exception::Consistency) |
| Return another NetBuffer starting ofs bytes from the beginning of this one. | |
| template<class T > | |
| const NetBuffer | after () const throw (wibble::exception::Consistency) |
| Return another NetBuffer starting just after sizeof(T) from the beginning of this one. | |
| NetBuffer & | operator+= (size_t ofs) throw (wibble::exception::Consistency) |
| Move the starting point of this buffer ofs bytes from the beginning. | |
| template<class T > | |
| void | skip () throw (wibble::exception::Consistency) |
| Move the starting point of this buffer sizeof(T) bytes from the beginning. | |
| void | skip (size_t t) throw (wibble::exception::Consistency) |
| Move the starting point of this buffer ofs bytes from the beginning. | |
Public Attributes | |
| size_t | cursor |
| Offset in bytes of the NetBuffer start, from the beginning of the memory area we manage. | |
Buffer whose starting can be moved back and forth, useful to decapsulate stacked network packets.
| wibble::sys::NetBuffer::NetBuffer | ( | ) | throw () [inline] |
| wibble::sys::NetBuffer::NetBuffer | ( | size_t | size | ) | [inline] |
| wibble::sys::NetBuffer::NetBuffer | ( | void * | buf, |
| size_t | size, | ||
| bool | own = true |
||
| ) | [inline] |
| wibble::sys::NetBuffer::NetBuffer | ( | const void * | buf, |
| size_t | size | ||
| ) | [inline] |
| wibble::sys::NetBuffer::NetBuffer | ( | const Buffer & | buf | ) | throw () [inline] |
| wibble::sys::NetBuffer::NetBuffer | ( | const NetBuffer & | buf | ) | throw () [inline] |
| const NetBuffer wibble::sys::NetBuffer::after | ( | size_t | ofs | ) | const throw (wibble::exception::Consistency) [inline] |
Return another NetBuffer starting ofs bytes from the beginning of this one.
References skip().
Referenced by TestNetBuffer::skipBytes().
| const NetBuffer wibble::sys::NetBuffer::after | ( | ) | const throw (wibble::exception::Consistency) [inline] |
Return another NetBuffer starting just after sizeof(T) from the beginning of this one.
References skip().
Referenced by operator+().
| const T* wibble::sys::NetBuffer::cast | ( | size_t | ofs = 0 | ) | const throw (wibble::exception::Consistency) [inline] |
Access the buffer contents as a structure T at the given offset.
References cursor, wibble::sys::Buffer::data(), and size().
Referenced by TestNetBuffer::skipBytes(), and TestNetBuffer::startAtBeginning().
| const void* wibble::sys::NetBuffer::data | ( | size_t | ofs = 0 | ) | const throw () [inline] |
Return a pointer to the buffer.
References cursor, and wibble::sys::Buffer::data().
Referenced by TestNetBuffer::skipBytes(), and TestNetBuffer::startAtBeginning().
| void* wibble::sys::NetBuffer::data | ( | size_t | ofs = 0 | ) | throw () [inline] |
Return a pointer to the buffer.
References cursor, and wibble::sys::Buffer::data().
| bool wibble::sys::NetBuffer::fits | ( | size_t | ofs = 0 | ) | const throw () [inline] |
Check if the buffer is long enough to contain a structure T at the given offset.
References cursor, and size().
Referenced by TestNetBuffer::startAtBeginning().
| NetBuffer wibble::sys::NetBuffer::operator+ | ( | size_t | ofs | ) | throw (wibble::exception::Consistency) [inline] |
| NetBuffer& wibble::sys::NetBuffer::operator+= | ( | size_t | ofs | ) | throw (wibble::exception::Consistency) [inline] |
Move the starting point of this buffer ofs bytes from the beginning.
References skip().
References cursor, and operator=().
| size_t wibble::sys::NetBuffer::size | ( | ) | const throw () [inline] |
Return the buffer size.
Reimplemented from wibble::sys::Buffer.
References cursor.
Referenced by cast(), fits(), skip(), TestNetBuffer::skipBytes(), and TestNetBuffer::startAtBeginning().
| void wibble::sys::NetBuffer::skip | ( | ) | throw (wibble::exception::Consistency) [inline] |
Move the starting point of this buffer sizeof(T) bytes from the beginning.
Referenced by after(), operator+=(), and TestNetBuffer::skipBytes().
| void wibble::sys::NetBuffer::skip | ( | size_t | t | ) | throw (wibble::exception::Consistency) [inline] |
1.7.6.1