Класс 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
 Описание слияния содержимого состояния агента. Подробнее...


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

typedef std::list< merge_t > so_4::rt::impl::state_handler_impl_t::merge_list_t
 

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

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


Методы

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  Имя состояния, из которого нужно брать содержимое.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

evt_name_set_t so_4::rt::impl::state_handler_impl_t::m_events [private]
 

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

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

evt_name_set_t so_4::rt::impl::state_handler_impl_t::m_excluded_events [private]
 

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

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

merge_list_t so_4::rt::impl::state_handler_impl_t::m_merge_list [private]
 

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

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


Документация по SObjectizer. Последние изменения: Thu Jan 12 10:52:52 2006. Создано системой  doxygen 1.4.6-NO
Hosted by uCoz