SObjectizer  5.1
Пространства имен | Классы | Определения типов | Функции
Пространство имен so_5::rt

SObjectizer run-time. Подробнее...

Пространства имен

namespace  impl
 Реализация SObjectizer run-time.
 

Классы

class  agent_t
 Базовый класс агентов. Подробнее...
 
class  agent_coop_t
 Кооперация агентов. Подробнее...
 
class  agent_ref_t
 Класс умная ссылка на agent_t. Подробнее...
 
class  agent_state_listener_t
 Базовый класс "слушателей" состояния агента. Подробнее...
 
class  atomic_refcounted_t
 Базовый класс с механизмом подсчета ссылок себя. Подробнее...
 
class  coop_listener_t
 Слушатель действий происходящих с кооперациями. Подробнее...
 
class  disp_evt_except_handler_t
 Обработчик исключений событий агентов на данном диспетчере. Подробнее...
 
class  dispatcher_t
 Абстрактный базовый класс для всех диспетчеров. Подробнее...
 
class  disp_binder_t
 Класс - интерфейс привязки агента к диспетчеру. Подробнее...
 
class  event_caller_block_t
 Класс - пачка вызывателей. Подробнее...
 
class  event_caller_block_ref_t
 Класс ссылка на event_caller_block_ref_t. Подробнее...
 
class  event_data_t
 Шаблонный класс для инкапсуляции сообщения, которое является параметром обработчика события агента. Подробнее...
 
class  not_null_event_data_t
 Шаблонный класс для инкапсуляции сообщения, которое является параметром обработчика события агента, и которое гарантировано указывает на реально существующий объект сообщения. Подробнее...
 
class  event_exception_response_action_t
 Базовый класс для реакции на возникновение исключения в событии агента. Подробнее...
 
class  event_exception_handler_t
 Интерфейс объекта, который обрабатывает исключение. Подробнее...
 
class  event_exception_logger_t
 Интерфейс объекта, который логирует исключение. Подробнее...
 
class  event_handler_caller_t
 Базовый класс для вызова обработчика. Подробнее...
 
class  real_event_handler_caller_t
 Шаблонный класс для вызова обработчика у конкретного агента с конкретным типом сообщения. Подробнее...
 
class  not_null_data_real_event_handler_caller_t
 Шаблонный класс для вызова обработчика у конкретного агента с конкретным типом сообщения. Подробнее...
 
class  event_handler_caller_ref_t
 Ссылка на event_handler_caller_t. Подробнее...
 
class  mbox_t
 Базовый класс почтового ящика. Подробнее...
 
class  mbox_ref_t
 Класс умной ссылки на mbox_t. Подробнее...
 
class  message_t
 Базовый класс для сообщений. Подробнее...
 
class  message_ref_t
 Класс умная ссылка на message_t. Подробнее...
 
class  nonempty_name_t
 Класс для инкапсуляции имени, которое не может быть пустым. Подробнее...
 
class  so_environment_params_t
 Инициализирующие параметры среды so_5. Подробнее...
 
class  so_environment_t
 Среда выполнения SObjectizer. Подробнее...
 
class  so_layer_t
 Интерфейс слоя SObjectizer. Подробнее...
 
class  state_base_t
 Базовый класс для состояния, который прячет конструктор и делает state_t дружественным классом. Подробнее...
 
class  state_t
 Класс для задания состояний агентов. Подробнее...
 
class  subscription_bind_t
 
class  subscription_unbind_t
 
struct  subscription_key_t
 Ключ для std::map для хранения подписок агента на соообщения либо же их перехват. Подробнее...
 
class  type_wrapper_t
 
class  quick_typeid_t
 Класс для оптимизации получения обертки на тип сообщения из шаблонных методов. Подробнее...
 

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

typedef std::unique_ptr
< agent_coop_t
agent_coop_unique_ptr_t
 Псевдоним для agent_coop_t.
 
typedef std::shared_ptr
< agent_coop_t
agent_coop_ref_t
 Тип для умного указателя на agent_coop_t.
 
typedef std::unique_ptr
< agent_state_listener_t
agent_state_listener_unique_ptr_t
 Умный указатель на слушателя
 
typedef std::shared_ptr
< agent_state_listener_t
agent_state_listener_ref_t
 Умная ссылка на agent_state_listener_t.
 
typedef std::unique_ptr
< coop_listener_t
coop_listener_unique_ptr_t
 Псевдоним unique_ptr для coop_listener_t.
 
typedef std::unique_ptr
< dispatcher_t
dispatcher_unique_ptr_t
 Тип для умного указателя на dispatcher_t.
 
typedef std::shared_ptr
< dispatcher_t
dispatcher_ref_t
 Тип для умного указателя на dispatcher_t.
 
typedef std::map< std::string,
dispatcher_ref_t
named_dispatcher_map_t
 Тип карты для хранения именованных диспетчеров.
 
typedef std::unique_ptr
< disp_binder_t
disp_binder_unique_ptr_t
 Тип для умного указателя на disp_binder_t.
 
typedef std::shared_ptr
< disp_binder_t
disp_binder_ref_t
 Тип для умного указателя на dispatcher_t.
 
typedef std::vector
< event_handler_caller_ref_t
evt_caller_array_t
 Тип для массива вызывателей.
 
typedef std::unique_ptr
< event_exception_response_action_t
event_exception_response_action_unique_ptr_t
 Псевдоним на умный указатель event_exception_response_action_t.
 
typedef std::unique_ptr
< event_exception_handler_t
event_exception_handler_unique_ptr_t
 Псевдоним на умный указатель к event_exception_handler_t.
 
typedef std::unique_ptr
< event_exception_logger_t
event_exception_logger_unique_ptr_t
 Псевдоним на умный указатель к event_exception_logger_t.
 
typedef std::unique_ptr
< so_layer_t
so_layer_unique_ptr_t
 Псевдоним unique_ptr для so_layer_t.
 
typedef std::shared_ptr
< so_layer_t
so_layer_ref_t
 Псевдоним разделяемого указателя на so_layer_t.
 
typedef std::map
< type_wrapper_t,
so_layer_ref_t
so_layer_map_t
 Псевдоним для карты типов к слоям.
 

Функции

std::string subscription_key_string (const subscription_key_t &sk)
 
 create_default_disp_binder ()
 Получить привязыватель по умолчанию.
 
 create_std_event_exception_handler ()
 Создать обработчик исключений по умолчанию.
 
 create_std_event_exception_logger ()
 Создать логер исключений по умолчанию.
 
 agent_owns_state (agent_t &agent, const state_t *state, throwing_strategy_t throwing_strategy)
 Проверить является ли агент владельцем состояния. Подробнее...
 
template<class AGENT >
ret_code_t agent_convertable_to (agent_t *agent, AGENT *&casted_agent, throwing_strategy_t throwing_strategy)
 Проверить является ли агент приводимым к данному типу. Подробнее...
 

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

SObjectizer run-time.

Функции

template<class AGENT >
ret_code_t so_5::rt::agent_convertable_to ( agent_t *  agent,
AGENT *&  casted_agent,
throwing_strategy_t  throwing_strategy 
)

Проверить является ли агент приводимым к данному типу.

Аргументы
agentАгент, приводимость которого к типу AGENT проверяется.
throwing_strategyФлаг - бросать ли исключение в случае ошибки.

Перекрестные ссылки so_5::rc_agent_incompatible_type_conversion и so_5::THROW_ON_ERROR.

so_5::rt::agent_owns_state ( agent_t &  agent,
const state_t *  state,
throwing_strategy_t  throwing_strategy 
)

Проверить является ли агент владельцем состояния.

Аргументы
throwing_strategyФлаг - бросать ли исключение в случае ошибки.

Перекрестные ссылки so_5::rc_agent_is_not_the_state_owner.

Используется в so_5::rt::subscription_bind_t::event() и so_5::rt::subscription_unbind_t::event().


Документация по SObjectizer v.5.1 'Джимара'. Последние изменения: Ср 15 Май 2013 12:56:22. Создано системой  doxygen1.8.3.1 Intervale SourceForge.net Logo