Класс so_4::rt::impl::state_handler_impl_t

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


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

Реальный описатель состояния агента.

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

typedef std::set< std::string > evt_name_set_t
 Тип множества имен разрешенных к обработке событий.
typedef std::list< merge_tmerge_list_t
 Тип списка описаний слияний состояния агента.

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

 state_handler_impl_t (class_handler_impl_t &class_handler, const char *state_name)
const std::string & query_name () const
const class_handler_impl_tquery_class_handler () const
void add_evt_handler (const std::string &event)
 Добавить имя события, разрешенного к обработке.
void exclude_evt_handler (const std::string &event)
 Добавить имя события, которое нужно запретить к обработке.
bool is_event_can_be_handled (const std::string &event_name) const
 Проверка того, что событие может быть обработано в данном состоянии агента.
void set_on_enter (pfn_on_state_enter_t handler)
 Добавить обработчик входа в состояние.
void call_on_enter (so_4::rt::agent_t *agent) const
 Вызов обработчика входа в состояние.
void set_on_exit (pfn_on_state_exit_t handler)
 Добавить обработчик выхода из состояния.
void call_on_exit (so_4::rt::agent_t *agent) const
 Вызов обработчика выхода из состояния.
const evt_name_set_tevt_names () const
 Получить множество имен разрешеных к обработке событий.
void add_merge (const std::string &class_name, const std::string &state_name)
 Добавить описание очередного слияния.
const merge_list_tmerge_list () const
 Получить описания всех слияний.
void exclude_disabled_events ()
 Изъять из списка событий состояния те события, которые запрещены к обработке.
void merge (const evt_name_set_t &events)
 Выполнить слияние с указанным множеством событий.

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

class_handler_impl_tm_class_handler
 Описатель класса агента.
std::string m_name
 Имя состояния.
on_enter_pfn_set_t m_on_enter
 Обработчики входа в состояние.
on_exit_pfn_set_t m_on_exit
 Обработчики выхода из состояния.
evt_name_set_t m_excluded_events
 Имена событий, которые должны быть запрещены к обработке в состоянии.
evt_name_set_t m_events
 Имена событий, которые разрешены к обработке в данном состоянии.
merge_list_t m_merge_list
 Описания всех слияний для состояния.

Классы

struct  merge_t
 Описание слияния содержимого состояния агента. Подробнее...

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

Тип списка описаний слияний состояния агента.

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


Методы

void so_4::rt::impl::state_handler_impl_t::exclude_evt_handler ( const std::string &  event  ) 

Добавить имя события, которое нужно запретить к обработке.

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

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

Используется в so_4::rt::state_event_excluder_t::state_event_excluder_t().

const state_handler_impl_t::evt_name_set_t & so_4::rt::impl::state_handler_impl_t::evt_names (  )  const

Получить множество имен разрешеных к обработке событий.

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

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

void so_4::rt::impl::state_handler_impl_t::add_merge ( const std::string &  class_name,
const std::string &  state_name 
)

Добавить описание очередного слияния.

Начиная с:
v.4.2.7
Аргументы:
class_name  Имя класса агента, из которого нужно брать состояние.
state_name  Имя состояния, из которого нужно брать содержимое.

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

Используется в so_4::rt::state_merge_binder_t::state_merge_binder_t().

const state_handler_impl_t::merge_list_t & so_4::rt::impl::state_handler_impl_t::merge_list (  )  const

Получить описания всех слияний.

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

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

void so_4::rt::impl::state_handler_impl_t::exclude_disabled_events (  ) 

Изъять из списка событий состояния те события, которые запрещены к обработке.

Начиная с:
v.4.2.7 Изымает из m_events имена из m_excluded_events.

Перекрестные ссылки m_events и m_excluded_events.

void so_4::rt::impl::state_handler_impl_t::merge ( const evt_name_set_t events  ) 

Выполнить слияние с указанным множеством событий.

Начиная с:
v.4.2.7 Выполняет объединение m_events и events.

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


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

Имена событий, которые должны быть запрещены к обработке в состоянии.

Начиная с:
v.4.2.7 Эти имена изымаются из множества имен, полученных после всех слияний.

Используется в exclude_disabled_events() и exclude_evt_handler().

Имена событий, которые разрешены к обработке в данном состоянии.

Вычисляются после выполнения всех слияний и исключений.

Используется в add_evt_handler(), evt_names(), exclude_disabled_events(), is_event_can_be_handled() и merge().

Описания всех слияний для состояния.

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

Используется в add_merge() и merge_list().


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