Объекты данного типа создаются макросами SOL4_MESSAGE_START и SOL4_MESSAGE_FINISH в описании типа агента.
Открытые члены | |
msg_handler_t (class_handler_t &class_handler, const char *msg_name, const char *msg_type_name, pfn_msg_creator_t creator, pfn_msg_destroyer_t destroyer) | |
so_4::rt::impl::msg_handler_impl_t & | query_impl () |
Часть реализации SObjectizer-а. | |
const so_4::rt::impl::msg_handler_impl_t & | query_impl () const |
Часть реализации SObjectizer-а. | |
void | add_fld_handler_creator (const char *fld_name, pfn_create_msg_fld_handler_t creator) |
void | set_msg_checker (pfn_msg_checker_t checker) |
Установить функцию проверки экземпляра сообщения. | |
Открытые статические члены | |
static so_4::rt::msg_fld_handler_t * | create_handler (char *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (signed char *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (unsigned char *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (short *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (unsigned short *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (int *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (unsigned int *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (float *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (double *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (std::string *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (comm_buf_t *fld_ptr, size_t items) |
static so_4::rt::msg_fld_handler_t * | create_handler (oess_1::stdsn::serializable_t *fld_ptr, size_t items) |
Закрытые члены | |
msg_handler_t (const msg_handler_t &) | |
Защита от копирования. | |
msg_handler_t & | operator= (const msg_handler_t &) |
Защита от копирования. | |
Закрытые данные | |
const class_handler_t & | m_class_handler |
Описание класса агента. | |
std::auto_ptr < impl::msg_handler_impl_t > | m_impl |
Реальное описание сообщения. |
so_4::rt::msg_handler_t::msg_handler_t | ( | class_handler_t & | class_handler, | |
const char * | msg_name, | |||
const char * | msg_type_name, | |||
pfn_msg_creator_t | creator, | |||
pfn_msg_destroyer_t | destroyer | |||
) |
class_handler | Класс агента, которому принадлежит сообщение. |
msg_name | Имя сообщения. |
msg_type_name | Имя C++ типа, реализующего сообщение. |
creator | Создатель экземпляра сообщения. |
destroyer | Уничтожитель экземпляра сообщения. |
so_4::rt::impl::msg_handler_impl_t & so_4::rt::msg_handler_t::query_impl | ( | ) |
const so_4::rt::impl::msg_handler_impl_t & so_4::rt::msg_handler_t::query_impl | ( | ) | const |
void so_4::rt::msg_handler_t::add_fld_handler_creator | ( | const char * | fld_name, | |
pfn_create_msg_fld_handler_t | creator | |||
) |
Связывает поле сообщения с функцией, которая создает обработчик данного поля.
fld_name | Имя поля сообщения. |
creator | Создатель обработчика поля сообщения. |
Перекрестные ссылки m_impl.
Используется в so_4::rt::msg_fld_binder_t::msg_fld_binder_t().
void so_4::rt::msg_handler_t::set_msg_checker | ( | pfn_msg_checker_t | checker | ) |
Установить функцию проверки экземпляра сообщения.
Устанавливает функцию проверки корректности экземпляра сообщения.
Если вызывается несколько раз, то каждый последующий вызов заменяет функцию проверки, установленную предыдущими вызовами.
Перекрестные ссылки m_impl.
Используется в so_4::rt::msg_checker_binder_t::msg_checker_binder_t().
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | char * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | signed char * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | unsigned char * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | short * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | unsigned short * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | int * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | unsigned int * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | float * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | double * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Количество элементов в поле (не байт!). |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | std::string * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Игнорируется. Количество элементов всегда принимается равным 1. |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | comm_buf_t * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Игнорируется. Количество элементов всегда принимается равным 1. |
so_4::rt::msg_fld_handler_t * so_4::rt::msg_handler_t::create_handler | ( | oess_1::stdsn::serializable_t * | fld_ptr, | |
size_t | items | |||
) | [static] |
fld_ptr | Указатель на значение поля. |
items | Игнорируется. Количество элементов всегда принимается равным 1. |
Документация по SObjectizer v.4.4 'Тебуломста'. Последние изменения: Thu Sep 18 10:26:49 2008. Создано системой 1.5.6 |