Пространство имен oess_1::tlv


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

Компонента tlv.

Компонента tlv содержит основные классы и определения для сериализации сущностей в двоичный формат TLV (Tag-Length-Value).


Классы

class  tag_processor_t
 Интерфейс обработчика поля Tag в двоичном потоке. Подробнее...
class  length_processor_t
 Интерфейс обработчика поля Length в двоичном потоке. Подробнее...
class  tlv_base_t
 Базовый класс для TLV. Подробнее...
class  tlv_extractor_t
 помощи оператора сдвига (>>). Подробнее...
class  basic_string_tlv_t
 TLV для сериализации объектов std::basic_string. Подробнее...
class  tlv_add_caller_t
 подчиненных TLV в объемлющий TLV. Подробнее...
class  compound_tlv_t
 TLV для сериализации составных объектов. Подробнее...
class  default_tag_processor_t
 Реализация интерфейса tag_processor_t. Подробнее...
class  default_length_processor_t
 Реализация интерфейса length_processor_t. Подробнее...
class  scalar_tlv_t
 TLV для сериализации одиночных объектов примитивных типов. Подробнее...
class  tagged_scalar_wrapper_t
 с определенным значением Tag. Подробнее...

Пространства имен

namespace  err
 Коды ошибок компоненты tlv.

Определения типов

typedef oess_1::uint_t default_tag_type_t
 Тип, к которому должны приводится все идентификаторы TLV.

Функции

oess_1::io::ibinstream_toperator>> (oess_1::io::ibinstream_t &s, tlv_extractor_t &o)
 Чтение TLV из входного потока.
oess_1::io::obinstream_toperator<< (oess_1::io::obinstream_t &s, const tlv_base_t &o)
 Вызывает метод tlv_pack у o.
oess_1::io::ibinstream_toperator>> (oess_1::io::ibinstream_t &s, tag_processor_t &o)
 Вызывает метод tlv_unpack_tag у o.
oess_1::io::obinstream_toperator<< (oess_1::io::obinstream_t &s, const tag_processor_t &o)
 Вызывает метод tlv_pack_tag у o.


Типы

typedef oess_1::uint_t default_tag_type_t

Тип, к которому должны приводится все идентификаторы TLV.

В зависимости от конкретной ситуации поле Tag может представляться 8-битовым, 16-битовым, 32-битовым или, например, 24-битовым значением. Может быть, поле Tag может быть представлено какой-либо структурой.

Но для компонента tlv необходимо, чтобы любое значение поля Tag можно было представить в виде уникального значения типа defaul_tag_type_t.


Функции

oess_1::io::ibinstream_t& oess_1::tlv::operator>> ( oess_1::io::ibinstream_t s,
tlv_extractor_t &  o 
) [inline]

Чтение TLV из входного потока.

Должен использоваться уже после того, как из потока будет прочитано поле Tag.

Аргументы:
s  Поток, с текущей позиции которого будет осуществляться чтение полей Length и Value.
o  Описатель объекта для извлечения.

oess_1::io::obinstream_t& oess_1::tlv::operator<< ( oess_1::io::obinstream_t s,
const tlv_base_t &  o 
) [inline]

Вызывает метод tlv_pack у o.

Аргументы:
s  Поток, с текущей позиции которого будет осуществляться запись TLV.
o  Объект для записи.

oess_1::io::ibinstream_t& oess_1::tlv::operator>> ( oess_1::io::ibinstream_t s,
tag_processor_t &  o 
) [inline]

Вызывает метод tlv_unpack_tag у o.

Аргументы:
s  Поток, с текущей позиции которого будет осуществляться чтение поля Tag.
o  Объект для извлечения.

oess_1::io::obinstream_t& oess_1::tlv::operator<< ( oess_1::io::obinstream_t s,
const tag_processor_t &  o 
) [inline]

Вызывает метод tlv_pack_tag у o.

Аргументы:
s  Поток, с текущей позиции которого будет осуществляться запись поля Tag.
o  Объект для записи.


Документация по ObjESSty. Последние изменения: Fri Oct 13 18:35:40 2006. Создано системой  doxygen 1.4.7
Hosted by uCoz