Класс so_4::rt::event_data_t

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

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

Описатель экземпляра события.

Класс содержит описание экземпляра события, сгенерированного для конкретного агента. Ссылка на этот зкземпляр передается как параметр в обработчик события.

Примечание для разработки диспетчеров:
данный объект увеличивает количество ссылок на data_wrapper в конструкторе и уменьшает в деструкторе. Корректно обрабатываются конструктор и оператор копирования. Поэтому класс event_data_t рекомендуется использовать для хранения data_wrapper в диспетчере.
Примеры:

sample/dyn_reg/main.cpp, sample/high_traffic/client.cpp и sample/high_traffic/server.cpp.


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

 event_data_t (so_4::rt::impl::event_data_impl_t *data_impl)
 реализацией SObjectizer-а.
 event_data_t (const event_data_t &o)
 Конструктор копирования.
event_data_toperator= (const event_data_t &o)
 Оператор копирования.
void * data () const
 Получить данные сообщения-инцидента события.
const std::string & agent () const
 Имя агента-владельца сообщения-инцидента.
const std::string & msg () const
 Имя сообщения-инцидента.
const comm_channel_t & channel () const
 Имя канала из которого поступило сообщение.
const std::string & query_event_owner_name () const
 Определить имя агента-владельца события.
so_4::rt::impl::event_data_impl_t * query_impl () const
 Внутрений метод SObjectizer-а.

Защищенные члены

void run_action () const

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

so_4::rt::impl::event_data_impl_t * m_data_impl

Друзья

class so_4::rt::dispatcher_t


Методы

const comm_channel_t & so_4::rt::event_data_t::channel  )  const
 

Имя канала из которого поступило сообщение.

Если сообщение было сгенерировано внутри run-time, то возвращается localhost-константа.

Примеры:
sample/high_traffic/server.cpp.

void * so_4::rt::event_data_t::data  )  const
 

Получить данные сообщения-инцидента события.

Возвращает:
0, если в инциденте не передавались данные. Если данные передавались, то подразумевается, что это указатель на динамически созданный объект того типа, который был описан в качестве типа сообщения (или производного от него типа).
Внимание:
возвращаемый указатель ни в коем случае нельзя использовать для посылки сообщений и нельзя освобождать оператором delete.

const std::string & so_4::rt::event_data_t::query_event_owner_name  )  const
 

Определить имя агента-владельца события.

Этот метод сделан доступным, чтобы можно было реализовывать такие диспетчеры, как, например, диспетчер с активными объектами.

Возвращает:
имя агента, у которого будет вызван обработчик события.

so_4::rt::impl::event_data_impl_t * so_4::rt::event_data_t::query_impl  )  const
 

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

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


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