#include <bstring_buf.hpp>
Граф наследования:ibstring_t:
Класс, предоставляющий средства ввода из объекта std::string, содержащего двоичные данные.
Объект этого класса использует существующий объект std::string, ссылку на который получает в конструкторе.
Объект ibstring_t не уничтожает std::string в своем деструкторе.
Чтение идет от начала строки до конца.
Открытые члены | |
ibstring_t (const std::string &from) | |
size_t | capacity () const |
Длина исходной строки. | |
virtual size_t | size () const |
Длина исходной строки. | |
virtual size_t | pos () const |
очередная операция чтения. | |
void | set_pos (size_t pos) |
очередная операци чтения. | |
virtual bool | eof () const |
Достигли ли конца строки? | |
Защищенные члены | |
virtual const oess_1::char_t * | in_reserve (size_t item_count, size_t item_size, size_t &item_available) |
Реализация метода из базового класса. | |
virtual void | in_shift (size_t item_count, size_t item_size) |
Реализация метода из базового класса. | |
Закрытые члены | |
ibstring_t (const ibstring_t &) | |
Защита от копирования. | |
ibstring_t & | operator= (const ibstring_t &) |
Защита от копирования. | |
Закрытые данные | |
const std::string & | m_from |
Строка из которой происходит чтение. | |
size_t | m_pos |
Текущая позиция. |
ibstring_t | ( | const std::string & | from | ) |
from | Ссылка на объект, из которого будет осуществляться чтение данных. Данный объект должен существовать все время, в течении которого существует объект ibstring_t. |
size_t capacity | ( | ) | const |
bool eof | ( | ) | const [virtual] |
Достигли ли конца строки?
Замещает ibinbuffer_t.
const oess_1::char_t * in_reserve | ( | size_t | item_count, | |
size_t | item_size, | |||
size_t & | item_available | |||
) | [protected, virtual] |
Реализация метода из базового класса.
Если нет достаточного объема данных для чтения хотя бы одного элемента, то порождается исключение.
item_count | Количество элементов, которые нужно прочитать. |
item_size | Размер одного элемента в байтах. |
item_available | Количество элементов, доступных по возвращенному указателю. |
Замещает ibinbuffer_t.
void in_shift | ( | size_t | item_count, | |
size_t | item_size | |||
) | [protected, virtual] |
Реализация метода из базового класса.
item_count | Количество успешно прочитанных элементов. |
item_size | Размер одного элемента в байтах. |
Замещает ibinbuffer_t.
void set_pos | ( | size_t | pos | ) |
очередная операци чтения.
Операция выполняется только, если pos меньше, чем size().
size_t size | ( | ) | const [virtual] |