#include <ent.hpp>
Граф наследования:oextension_t:
Открытые члены | |
virtual void | pack (oess_1::io::ostream_t &to) const =0 |
Упаковать расширение в указанный поток. | |
virtual void | pack_opaque (const unknown_extension_t &ext)=0 |
Упаковать двоичный образ неизвестного расширения. | |
Реализация унаследованных методов. | |
virtual bool | obj_start (const void *object, const std::string *type_name, const std::string &scheme)=0 |
virtual void | obj_finish (const void *object, const std::string *type_name)=0 |
Помещение в поток маркера окончания объекта. | |
virtual void | obj_complete (const void *object, const std::string *type_name)=0 |
virtual void | pack_type_name (const std::string &type_name, const std::string &type_scheme)=0 |
Упаковка имени типа в выходного поток. | |
virtual oess_1::io::ostream_t & | query_stream ()=0 |
Получение доступа к выходному потоку. | |
virtual bool | set_optional_attr_existence (const std::string &attr_name, bool existence)=0 |
Установить метку наличия сериализованного опционального атрибута. | |
virtual oextension_t * | extension_start ()=0 |
Создать объект, управляющий разметкой расширения сущности. | |
virtual void | extension_finish (oextension_t &extension)=0 |
Обработка завершения сериализации расширения объекта. |
virtual void extension_finish | ( | oextension_t & | extension | ) | [pure virtual] |
Обработка завершения сериализации расширения объекта.
Замещает oent_t.
Замещается в oextension_std_t.
virtual oextension_t* extension_start | ( | ) | [pure virtual] |
Создать объект, управляющий разметкой расширения сущности.
Замещает oent_t.
Замещается в oextension_std_t.
virtual void obj_complete | ( | const void * | object, | |
const std::string * | type_name | |||
) | [pure virtual] |
Вызывается после полного окончания сериализации объекта. При множественном наследовании между обращениями к obj_finish и obj_complete для одного и того же объекта еще может осуществляться сериализация составляющих, унаследованных из других базовых типов.
Замещает oent_t.
Замещается в oextension_std_t.
virtual bool obj_start | ( | const void * | object, | |
const std::string * | type_name, | |||
const std::string & | scheme | |||
) | [pure virtual] |
Вызывается перед началом сериализации объекта.
Замещает oent_t.
Замещается в oextension_std_t.
virtual void pack | ( | oess_1::io::ostream_t & | to | ) | const [pure virtual] |
Упаковать расширение в указанный поток.
Предполагается, что атрибуты, входящие в расширение, сначала упаковываются во временный вспомогательный поток. После того как все атрибуты расширения будут сериализованы, содержимое временного потока должно быть перенесено в общий поток объекта. Для этого у расширения предназначен данный метод.
Замещается в oextension_std_t.
virtual void pack_opaque | ( | const unknown_extension_t & | ext | ) | [pure virtual] |
Упаковать двоичный образ неизвестного расширения.
Предполагается, что атрибуты, входящие в расширение, сначала упаковываются во временный вспомогательный поток. Если же атрибутов в расширении нет, а есть только двоичный образ неизвестного расширения, то в этот временный вспомогательный поток должен быть упакован двоичный образ неизвестного расширения. Именно для этой упаковки предназначен данный метод.
Замещается в oextension_std_t.
virtual void pack_type_name | ( | const std::string & | type_name, | |
const std::string & | type_scheme | |||
) | [pure virtual] |
Упаковка имени типа в выходного поток.
Имя типа сохраняется в потоке при сохранении объекта по указателю на базовый класс. В различных потоках могут применяться различные способы представления подобных имен (в виде строки, идентификатора типа и т.д.).
Замещает oent_t.
Замещается в oextension_std_t.
virtual bool set_optional_attr_existence | ( | const std::string & | attr_name, | |
bool | existence | |||
) | [pure virtual] |
Установить метку наличия сериализованного опционального атрибута.
Замещает oent_t.
Замещается в oextension_std_t.