Класс so_4::rt::evt_subscr_t

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


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

Информация об инцидентах события.

Класс для хранения списка инцидентах события при реализации операции подписки события.

Инциденты хранятся без дубликатов.

Открытые типы

enum  subscr_flag_t { e_change_all, e_add, e_remove_specified, e_no_change }
 Флаги управления подпиской события агента. Подробнее...
enum  dispatching_t { normal_dispatching, insend_dispatching }
 Флаги управления диспетчеризацией события. Подробнее...

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

 evt_subscr_t ()
 Конструктор по умолчанию.
void add (const std::string &agent, const std::string &msg)
 Добавить инцидент к списку.
size_t size () const
 Количество элементов в списке.
void query (size_t index, std::string &agent, std::string &msg) const
 Описание инцидента по номеру.
so_4::rt::impl::evt_subscr_impl_t & query_impl ()
 Внутренний метод SObjectizer-а.
const
so_4::rt::impl::evt_subscr_impl_t & 
query_impl () const
 Внутренний метод SObjectizer-а.

Закрытые члены

 evt_subscr_t (const evt_subscr_t &)
 Защита от копирования.
evt_subscr_toperator= (const evt_subscr_t &)
 Защита от копирования.

Закрытые данные

std::auto_ptr
< so_4::rt::impl::evt_subscr_impl_t > 
m_impl
 Внутренний атрибут SObjectizer-а.


Перечисления

Флаги управления подпиской события агента.

Используются в функции so_4::api::subscribe_event().

Элементы перечислений:
e_change_all  Полная смена списка инцидентов.
e_add  Добавить к существующим.
e_remove_specified  Изъять из инцидентов указанные сообщения и оставить среди инцидентов остальные сообщения.
e_no_change  Не изменять список инцидентов.

Флаги управления диспетчеризацией события.

Начиная с:
v.4.2.7
Элементы перечислений:
normal_dispatching  Нормальная диспетчеризация.
insend_dispatching  Диспетчеризация и запуск события на выполнения до возврата из функции send_msg.


Конструктор(ы)

so_4::rt::evt_subscr_t::evt_subscr_t (  ) 

Конструктор по умолчанию.

Изначально список инцидентов пуст.


Методы

void so_4::rt::evt_subscr_t::add ( const std::string &  agent,
const std::string &  msg 
)

Добавить инцидент к списку.

Дубликаты игнорируются.

Аргументы:
agent  Имя агента-владельца сообщения.
msg  Имя сообщения.

Перекрестные ссылки m_impl.

Используется в so_4::rt::agent_t::so_subscribe() и so_4::rt::agent_t::so_subscribe_insend_event().

void so_4::rt::evt_subscr_t::query ( size_t  index,
std::string &  agent,
std::string &  msg 
) const

Описание инцидента по номеру.

Реализация не гарантирует, что инциденты храняться в списке в порядке их занесения.

Внимание:
поведение при index >= size() не определено.
Аргументы:
index  Индекс инцидента в списке. Инциденты нумеруются с 0.
agent  Приемник имени агента-владельца сообщения.
msg  Приемник имени сообщения.

Перекрестные ссылки m_impl.

so_4::rt::impl::evt_subscr_impl_t & so_4::rt::evt_subscr_t::query_impl (  ) 

Внутренний метод SObjectizer-а.

Возвращает:
реальное представление списка инцидентов.

Перекрестные ссылки m_impl.

const so_4::rt::impl::evt_subscr_impl_t & so_4::rt::evt_subscr_t::query_impl (  )  const

Внутренний метод SObjectizer-а.

Возвращает:
реальное представление списка инцидентов.

Перекрестные ссылки m_impl.


Данные класса

std::auto_ptr< so_4::rt::impl::evt_subscr_impl_t > so_4::rt::evt_subscr_t::m_impl [private]

Внутренний атрибут SObjectizer-а.

Реальное представление списка инцидентов.

Используется в add(), query(), query_impl() и size().


Документация по SObjectizer v.4.4 'Тебуломста'. Последние изменения: Thu Sep 18 10:26:49 2008. Создано системой  doxygen1.5.6 Intervale SourceForge.net Logo