В системе должны быть только динамически созданные объекты типа msg_data_impl_t!
Открытые члены | |
msg_data_impl_t (void *data, msg_wrapper_t *wrapper, const cpp_util_2::string_piece_t &receiver, const comm_channel_t &channel_to, const comm_channel_t &channel_from) | |
~msg_data_impl_t () | |
bool | check () const |
void | deliver (delivery_man_t &delivery_man) |
Открытые статические члены | |
static void | inc_ref_count (msg_data_impl_t *wrapper) |
static void | dec_ref_count (msg_data_impl_t *wrapper) |
Открытые атрибуты | |
void * | m_data |
Пользовательский объект, связанный с сообщением. | |
msg_wrapper_t * | m_wrapper |
Обертка над типом данного сообщения. | |
std::string | m_receiver |
comm_channel_t | m_channel_to |
Канал, в который направляется сообщение. | |
comm_channel_t | m_channel_from |
Канал, из которого получено сообщение. | |
Закрытые данные | |
ref_count_ops::counter_t | m_ref_count |
so_4::rt::impl::msg_data_impl_t::msg_data_impl_t | ( | void * | data, | |
msg_wrapper_t * | wrapper, | |||
const cpp_util_2::string_piece_t & | receiver, | |||
const comm_channel_t & | channel_to, | |||
const comm_channel_t & | channel_from | |||
) |
Объект создается с нулевым количеством ссылок.
receiver | Содержит пустую строку если нет конкретного адресата |
Перекрестные ссылки m_receiver.
so_4::rt::impl::msg_data_impl_t::~msg_data_impl_t | ( | ) |
bool so_4::rt::impl::msg_data_impl_t::check | ( | ) | const |
Проверить корректность сообщения при помощи функции проверки.
Возвращается 'true' если сообщение считается корректным. Если функция проверки не назначена, то сообщение всегда считается корректным bool.
Перекрестные ссылки m_data и m_wrapper.
Используется в so_4::rt::impl::event_data_single_t::run_action().
void so_4::rt::impl::msg_data_impl_t::deliver | ( | delivery_man_t & | delivery_man | ) |
Выполнение доставки экземпляра сообщения получателям.
Перекрестные ссылки m_wrapper.
Используется в so_4::api::deliver_msg_helper::deliver_and_dispatch().
void so_4::rt::impl::msg_data_impl_t::inc_ref_count | ( | msg_data_impl_t * | wrapper | ) | [static] |
Увеличение количества ссылок.
Перекрестные ссылки m_ref_count и m_wrapper.
Используется в so_4::rt::impl::event_data_single_t::event_data_single_t(), so_4::rt::msg_data_t::msg_data_t() и so_4::rt::msg_data_t::operator=().
void so_4::rt::impl::msg_data_impl_t::dec_ref_count | ( | msg_data_impl_t * | wrapper | ) | [static] |
Уменьшение количество ссылок. Если количество ссылок достигло нуля, объект msg_data_wrapper_t автоматически уничтожается.
Перекрестные ссылки m_ref_count и m_wrapper.
Используется в so_4::rt::msg_data_t::operator=() и so_4::rt::impl::event_data_single_t::~event_data_single_t().
Пользовательский объект, связанный с сообщением.
Нулевой указатель, если пользователь не передает в сообщении никаких данных.
Используется в check(), so_4::rt::impl::event_data_single_t::query_msg_data() и ~msg_data_impl_t().
std::string so_4::rt::impl::msg_data_impl_t::m_receiver |
Пустая строка, если сообщение является широковещательным.
Используется в msg_data_impl_t() и so_4::rt::impl::event_data_single_t::query_receiver().
ref_count_ops::counter_t so_4::rt::impl::msg_data_impl_t::m_ref_count [private] |
Количество ссылок на данный экземпляр. Когда количество ссылок достигает нуля экземпляр сообщения должен быть уничтожен
Используется в dec_ref_count() и inc_ref_count().
Документация по SObjectizer v.4.4 'Тебуломста'. Последние изменения: Thu Sep 18 10:26:49 2008. Создано системой 1.5.6 |