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

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

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

Класс для случаев, когда ОДИН инцидент приводит к генерации НЕСКОЛЬКИХ событий с ОДИНАКОВЫМ приоритетом.

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

Если же окажется, что в текущем состоянии агента можно обработать несколько событий, то система не может считаться предсказуемой (т.к. нигде не оговаривается порядок выполнения событий, а это может быть критически важно). Поэтому, при обнаружении нескольких доступных для обработки событий ни одно из них не выполняется.


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

 event_data_only_one_of_t (agent_wrapper_t &agent, const event_data_single_ptr_list_t &single_events)
virtual const std::string & query_msg_owner () const
virtual const std::string & query_msg_name () const
virtual const comm_channel_t & query_msg_channel_from () const
virtual const comm_channel_t & query_msg_channel_to () const
virtual void * query_msg_data () const
virtual const std::string & query_receiver () const
virtual const msg_wrapper_t & query_msg_wrapper () const
virtual void run_action (const event_data_t &event_data)
virtual bool is_insend_dispatching () const

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

const event_data_single_t & query_first () const

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

event_data_single_ptr_list_t m_events


Методы

bool so_4::rt::impl::event_data_only_one_of_t::is_insend_dispatching  )  const [virtual]
 

Начиная с:
v.4.2.7
Проверяет, чтобы все подчиненные события были либо insend, либо normal. Если это не так, то печатается сообщение об ошибке.

Возвращает:
true, если все подчиненные события являются insend.


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