Класс oent_t

#include <ent.hpp>

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

oent_std_t oextension_t oextension_std_t Полный список членов класса

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

Базовый класс для управления разметкой сущности в выходном потоке.


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

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_tquery_stream ()=0
 Получение доступа к выходному потоку.
virtual bool set_optional_attr_existence (const std::string &attr_name, bool existence)=0
 Установить метку наличия сериализованного опционального атрибута.
virtual oextension_textension_start ()=0
 Создать объект, управляющий разметкой расширения сущности.
virtual void extension_finish (oextension_t &extension)=0
 Обработка завершения сериализации расширения объекта.


Методы

virtual void extension_finish ( oextension_t extension  )  [pure virtual]

Обработка завершения сериализации расширения объекта.

Начиная с:
v.1.2.0
Аргументы:
extension  Объект, который был получен предшествующим вызовом extension_start().

Замещается в oextension_t, oent_std_t и oextension_std_t.

virtual oextension_t* extension_start (  )  [pure virtual]

Создать объект, управляющий разметкой расширения сущности.

Начиная с:
v.1.2.0
Должен вызываться при начале сериализации расширения объекта.

Возвращает:
Динамически созданный объект, который должен быть удален посредством delete.

Замещается в oextension_t, oent_std_t и oextension_std_t.

virtual void obj_complete ( const void *  object,
const std::string *  type_name 
) [pure virtual]

Вызывается после полного окончания сериализации объекта. При множественном наследовании между обращениями к obj_finish и obj_complete для одного и того же объекта еще может осуществляться сериализация составляющих, унаследованных из других базовых типов.

Замещается в oextension_t, oent_std_t и oextension_std_t.

virtual void obj_finish ( const void *  object,
const std::string *  type_name 
) [pure virtual]

Помещение в поток маркера окончания объекта.

Аргументы:
object  Указатель на сериализуемый объект. Тот же самый указатель, который использовался при вызове метода obj_start.
type_name  Тот же самый указатель, который использовался в методе obj_start.

Замещается в oextension_t, oent_std_t и oextension_std_t.

virtual bool obj_start ( const void *  object,
const std::string *  type_name,
const std::string &  scheme 
) [pure virtual]

Вызывается перед началом сериализации объекта.

Возвращает:
true, если объект должен быть сериализован. false, если эта составляющая объекта из-за виртуального множественного наследования уже была сериализована и повторную сериализацию осуществлять не нужно.
Аргументы:
object  Указатель на сериализуемый объект.
type_name  Этот указатель должен оставаться корректным до вызова метода obj_finish.

Замещается в oextension_t, oent_std_t и oextension_std_t.

virtual void pack_type_name ( const std::string &  type_name,
const std::string &  type_scheme 
) [pure virtual]

Упаковка имени типа в выходного поток.

Имя типа сохраняется в потоке при сохранении объекта по указателю на базовый класс. В различных потоках могут применяться различные способы представления подобных имен (в виде строки, идентификатора типа и т.д.).

v.1.1.0
Добавлен аргумент type_scheme.
Аргументы:
type_name  Имя типа сохраняемого объекта.
type_scheme  Описание типе сохраняемого объекта.

Замещается в oextension_t, oent_std_t и oextension_std_t.

virtual bool set_optional_attr_existence ( const std::string &  attr_name,
bool  existence 
) [pure virtual]

Установить метку наличия сериализованного опционального атрибута.

Начиная с:
v.1.2.0
Возвращает:
значение параметра existence.
Аргументы:
attr_name  Имя опционального атрибута.
existence  Будет ли атрибут сериализован. true, если будет, false в противном случае.

Замещается в oextension_t, oent_std_t и oextension_std_t.


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