Класс ibstring_t

#include <bstring_buf.hpp>

Граф наследования:ibstring_t:

ibinbuffer_t ibinstream_t istream_t Полный список членов класса

Подробное описание

Двоичный входной поток из объекта std::string.

Класс, предоставляющий средства ввода из объекта std::string, содержащего двоичные данные.

Объект этого класса использует существующий объект std::string, ссылку на который получает в конструкторе.

Объект ibstring_t не уничтожает std::string в своем деструкторе.

Чтение идет от начала строки до конца.

Внимание:
Начиная с версии 1.4.0 к строке, которой инициализируется поток ibstring_t предъявляется дополнительное требование: строка не должна изменяться во жизни объекта ibstring_t.
Заметки:
v.1.1.1 Сделан производным от oess_1::io::ibinbuffer_t.


Открытые члены

 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_tin_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_toperator= (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

Длина исходной строки.

Уст.:
Необходимо использовать метод oess_1::io::ibstring_t::size().

bool eof (  )  const [virtual]

Достигли ли конца строки?

Возвращает:
true, если текущая позиция достигла конца строки.

Замещает 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]

Длина исходной строки.

Начиная с:
v.1.1.1

Замещает ibinbuffer_t.


Объявления и описания членов классов находятся в файлах:
Документация по ObjESSty. Последние изменения: Fri Oct 13 18:35:39 2006. Создано системой  doxygen 1.4.7
Hosted by uCoz