#include <ByteInBuffer.h>
Public Member Functions | |
| ByteInBuffer (const ByteInBuffer &o) | |
| copy constructor: create a new duplicate object. | |
| ByteInBuffer (const ByteBuffer &_buff) | |
| create a new cursor object | |
| void | check_available (unsigned int n) const |
| throws a std::underflow_error unless n bytes are available at the cursor | |
| size_t | cursor () const |
| return the current cursor position | |
| bool | cursor_available (unsigned int n) const |
| check that n bytes are available after the cursor | |
| template<typename Tp> | |
| Tp | fetch () |
| fetch a single item of the template type Tp from the buffer, advancing the cursor. | |
| unsigned char | fetch_unsigned_char () |
| unsigned int | fetch_unsigned_int () |
| unsigned short | fetch_unsigned_short () |
| void | fetchAnyType (class AnyType &v) |
| fetch an AnyType value at the current position, the type to fetch must be set previously. | |
| void | fetchBytes (ByteBuffer &dest, unsigned int len) |
| fetch a number of bytes from the buffer | |
| void | fetchBytes (char *dest, unsigned int len) |
| fetch a number of bytes from the buffer | |
| std::string | fetchLongString () |
| fetch a long string prefixed by an unsigned int. | |
| std::string | fetchString () |
| fetch a short string prefixed by an unsigned char. | |
| size_t | remaining () const |
| return the number of bytes remaining after the cursor | |
| void | rewind () |
| reset the cursor | |
Definition at line 21 of file ByteInBuffer.h.
| VGServer::ByteInBuffer::ByteInBuffer | ( | const ByteBuffer & | _buff | ) | [inline] |
| VGServer::ByteInBuffer::ByteInBuffer | ( | const ByteInBuffer & | o | ) | [inline] |
| void VGServer::ByteInBuffer::check_available | ( | unsigned int | n | ) | const [inline] |
throws a std::underflow_error unless n bytes are available at the cursor
Definition at line 70 of file ByteInBuffer.h.
References cursor_available().
Referenced by fetch(), fetchBytes(), fetchLongString(), and fetchString().
| size_t VGServer::ByteInBuffer::cursor | ( | ) | const [inline] |
| bool VGServer::ByteInBuffer::cursor_available | ( | unsigned int | n | ) | const [inline] |
check that n bytes are available after the cursor
Definition at line 66 of file ByteInBuffer.h.
References VGServer::ByteBuffer::size().
Referenced by check_available().
| Tp VGServer::ByteInBuffer::fetch | ( | ) | [inline] |
fetch a single item of the template type Tp from the buffer, advancing the cursor.
Be careful with implicit type conversions!
Definition at line 76 of file ByteInBuffer.h.
References check_available(), and VGServer::ByteBuffer::data().
| unsigned char VGServer::ByteInBuffer::fetch_unsigned_char | ( | ) | [inline] |
Definition at line 89 of file ByteInBuffer.h.
Referenced by VGServer::GraphParser< Callback >::parse().
| unsigned int VGServer::ByteInBuffer::fetch_unsigned_int | ( | ) | [inline] |
Definition at line 95 of file ByteInBuffer.h.
Referenced by VGServer::GraphParser< Callback >::parse().
| unsigned short VGServer::ByteInBuffer::fetch_unsigned_short | ( | ) | [inline] |
Definition at line 92 of file ByteInBuffer.h.
| void VGServer::ByteInBuffer::fetchAnyType | ( | class AnyType & | v | ) |
fetch an AnyType value at the current position, the type to fetch must be set previously.
Definition at line 11 of file ByteInBuffer.cc.
References VGServer::ATTRTYPE_BOOL, VGServer::ATTRTYPE_BYTE, VGServer::ATTRTYPE_CHAR, VGServer::ATTRTYPE_DOUBLE, VGServer::ATTRTYPE_DWORD, VGServer::ATTRTYPE_FLOAT, VGServer::ATTRTYPE_INTEGER, VGServer::ATTRTYPE_INVALID, VGServer::ATTRTYPE_LONG, VGServer::ATTRTYPE_LONGSTRING, VGServer::ATTRTYPE_QWORD, VGServer::ATTRTYPE_SHORT, VGServer::ATTRTYPE_STRING, VGServer::ATTRTYPE_WORD, fetchLongString(), and fetchString().
| void VGServer::ByteInBuffer::fetchBytes | ( | ByteBuffer & | dest, | |
| unsigned int | len | |||
| ) | [inline] |
fetch a number of bytes from the buffer
Definition at line 132 of file ByteInBuffer.h.
References VGServer::ByteBuffer::assign_copy(), check_available(), and VGServer::ByteBuffer::data().
| void VGServer::ByteInBuffer::fetchBytes | ( | char * | dest, | |
| unsigned int | len | |||
| ) | [inline] |
fetch a number of bytes from the buffer
Definition at line 123 of file ByteInBuffer.h.
References check_available(), and VGServer::ByteBuffer::data().
| std::string VGServer::ByteInBuffer::fetchLongString | ( | ) | [inline] |
fetch a long string prefixed by an unsigned int.
Definition at line 111 of file ByteInBuffer.h.
References check_available(), and VGServer::ByteBuffer::data().
Referenced by fetchAnyType().
| std::string VGServer::ByteInBuffer::fetchString | ( | ) | [inline] |
fetch a short string prefixed by an unsigned char.
Definition at line 99 of file ByteInBuffer.h.
References check_available(), and VGServer::ByteBuffer::data().
Referenced by fetchAnyType(), and VGServer::GraphParser< Callback >::parse().
| size_t VGServer::ByteInBuffer::remaining | ( | ) | const [inline] |
return the number of bytes remaining after the cursor
Definition at line 62 of file ByteInBuffer.h.
References VGServer::ByteBuffer::size().
Referenced by VGServer::GraphParser< Callback >::parse().
| void VGServer::ByteInBuffer::rewind | ( | ) | [inline] |
1.4.7