Пространство имен so_4::rt::impl


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

Детали реализации SObjectizer run-time.


Классы

class  subscr_hook_storage_t
 Хранилище динамически созданных объектов subscr_hook_t. Подробнее...
class  dyn_coop_controlled_obj_storage_t
 которых определяется динамической кооперацией. Подробнее...
class  uncompatible_incident_finder_t
 Предикат для std::find_if. Подробнее...
class  std_class_relation_handler_t
class  new_content_filler_t
 Предикат для std::for_each. Подробнее...
class  class_name_to_set_t
 Предикат для std::for_each. Подробнее...
class  cyclic_inheritance_marker_t
 Предикат для std::for_each. Подробнее...
class  msg_conflict_finder_t
 Предикат для std::for_each. Подробнее...
class  evt_conflict_finder_t
 Предикат для std::for_each. Подробнее...
class  state_conflict_finder_t
 Предикат для std::for_each. Подробнее...
class  merge_possibility_checker_t
 Предикат для std::find_if. Подробнее...
struct  state_by_name_finder_t
 Предикат для std::find_if. Подробнее...
class  merge_maker_t
 Предикат для std::for_each. Подробнее...
class  unknown_evt_checker_t
 Предикат для std::find_if. Подробнее...
class  unknown_evt_in_state_finder_t
 Предикат для std::find_if. Подробнее...
class  std_delivery_man_t
class  agent_coop_storage_t
 Класс для хранения описания кооперации агентов. Подробнее...
class  agent_traits_storage_t
 Хранилище свойств (traits) агента. Подробнее...
class  msg_data_impl_t
class  msg_wrapper_t
class  evt_wrapper_t
 Базовый класс для внутренней обертки вокруг события агента. Подробнее...
class  agent_wrapper_t
class  agent_wrapper_base_t
class  auto_map_cleaner_t
class  base_evt_wrapper_t
class  class_handler_impl_t
 Внутренее описание класса агента. Подробнее...
class  class_relation_handler_t
class  delivery_man_t
class  event_data_impl_t
class  event_data_only_one_of_t
class  event_data_single_t
class  evt_handler_impl_t
 Реальное описание обработчика события. Подробнее...
class  evt_retranslator_t
class  evt_subscr_impl_t
class  evt_traditional_t
class  global_agent_wrapper_t
class  kernel_t
class  msg_fld_handler_t
 Интерфейс обработчика значения поля сообщения при сериализации/десериализации в SOP. Подробнее...
class  fld_type_to_sop_stream_type_t
 Установление соответствия между C++ типом и типом потока в SOP. Подробнее...
class  fld_type_to_sop_stream_type_t< char >
class  fld_type_to_sop_stream_type_t< signed char >
class  fld_type_to_sop_stream_type_t< unsigned char >
class  fld_type_to_sop_stream_type_t< short >
class  fld_type_to_sop_stream_type_t< unsigned short >
class  fld_type_to_sop_stream_type_t< int >
class  fld_type_to_sop_stream_type_t< unsigned int >
class  fld_type_to_sop_stream_type_t< float >
class  fld_type_to_sop_stream_type_t< double >
class  fld_type_to_sop_stream_type_t< comm_buf_t >
class  msg_fld_handler_template_t
 Шаблонный класс для манипуляции полями элементарных типов. Подробнее...
class  msg_handler_impl_t
 Реальный описатель сообщения агента. Подробнее...
class  phys_coop_destroyer_t
 Класс для физического удаления агентов и коопераций. Подробнее...
class  state_handler_impl_t
 Реальный описатель состояния агента. Подробнее...
class  state_finder_t
 Предикат для std::find_if. Подробнее...
class  state_listener_storage_t
 Хранилище слушателей состояний агента. Подробнее...
class  std_agent_wrapper_t
class  std_msg_wrapper_t
 Стандартная обертка сообщения агента. Подробнее...
class  sys_dict_t
class  call_on_enter_t
class  evt_receive_msg_caller_t
class  std_sys_dict_t
 Стандартная реализация интерфейса sys_dict_t. Подробнее...
struct  coop_by_name_deregistrator_t
 Предикат для std::for_each. Подробнее...
class  no_child_extractor_t
 Предикат для std::remove_if. Подробнее...
class  fld_type_to_sop_stream_type_t< std::string >
class  fld_type_to_sop_stream_type_t< oess_1::stdsn::serializable_t >

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

namespace  coop_relation
 Пространство имен средств синхронизации доступа к информации о взаимоотношениях между кооперациями.
namespace  disp_context
 Cредства сохранения информации о текущем контексте диспетчера.

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

typedef evt_wrapper_t *(* pfn_evt_wrapper_factory_t )(agent_wrapper_t &, const evt_handler_impl_t &)
typedef auto_ptr_3::soft_obj_ptr_t<
agent_traits_t
traits_destroyer_t
 Объект, который определяет время жизни свойства агента.
typedef std::list< traits_destroyer_t * > traits_destroyer_ptr_list_t
 Список указателей на traits_destroyer_t.
typedef std::set< agent_wrapper_t * > agent_wrapper_ptr_set_t
typedef std::set< msg_wrapper_t * > msg_wrapper_ptr_set_t
typedef std::set< evt_wrapper_t * > evt_wrapper_ptr_set_t
typedef std::set< std::string > bases_set_t
typedef std::map< std::string,
class_handler_impl_t * > 
class_map_t
typedef std::list< event_data_single_t * > event_data_single_ptr_list_t
typedef evt_wrapper_t *(* pfn_evt_wrapper_factory_t )(agent_wrapper_t &, const evt_handler_impl_t &)
typedef void(* pfn_action_t )(so_4::rt::agent_t *, const so_4::rt::event_data_t &)
typedef std::vector< const
evt_handler_impl_t * > 
evt_handler_impl_ptr_vector_t
typedef void *(* pfn_msg_creator_t )()
typedef void(* pfn_msg_destroyer_t )(void *)
typedef so_4::rt::impl::msg_fld_handler_t *(* pfn_create_msg_fld_handler_t )(void *fld_ptr)
typedef bool(* pfn_msg_checker_t )(void *)
typedef std::vector< const
msg_handler_impl_t * > 
msg_handler_impl_ptr_vector_t
typedef void(* pfn_on_state_enter_t )(so_4::rt::agent_t *agent, const std::string &state_name)
typedef void(* pfn_on_state_exit_t )(so_4::rt::agent_t *agent, const std::string &state_name)
typedef std::set< pfn_on_state_enter_t,
std::less< pfn_on_state_enter_t > > 
on_enter_pfn_set_t
typedef on_enter_pfn_set_t on_exit_pfn_set_t
typedef std::vector< state_handler_impl_t * > state_handler_impl_ptr_vector_t
typedef auto_ptr_3::soft_obj_ptr_t<
agent_state_listener_t
listener_destroyer_t
 Объект, который определяет время жизни слушателя состояния.
typedef std::vector< listener_destroyer_t * > listener_destroyer_ptr_list_t
 Список указателей на listener_destroyer_t.
typedef std::vector< agent_wrapper_t * > agent_wrapper_ptr_vector_t
typedef std::map< std::string,
agent_coop_t * > 
coop_map_t
typedef std::vector< agent_coop_t * > coop_vector_t
typedef call_on_enter_t call_on_exit_t

Функции

ret_code_t change_agent_state (const std::string &agent_name, const std::string &state_name, bool always_call_handlers)
static bool state_need_no_merging (const state_handler_impl_ptr_vector_t::value_type &o)
 Предикат для std::remove_copy_if.
void invalid_class_to_stderr_dumper (const std_class_relation_handler_t::class_info_map_t::value_type &a)
 Предикат для std::for_each.
static void exclude_disabled_events_caller (state_handler_impl_ptr_vector_t::value_type a)
 Предикат для std::for_each.
class_relation_handler_tcreate_std_class_relation_handler ()
delivery_man_t * create_std_delivery_man ()
static void destroy_single_event (event_data_single_t *e)
evt_wrapper_tretranslator_evt_factory (agent_wrapper_t &agent, const evt_handler_impl_t &evt_handler)
evt_wrapper_ttraditional_evt_factory (agent_wrapper_t &agent, const evt_handler_impl_t &evt_handler)
agent_wrapper_t * create_global_agent_wrapper (const std::string &name, class_handler_impl_t &agent_class)
msg_wrapper_t * create_std_msg_wrapper (agent_wrapper_t &agent, const msg_handler_impl_t &msg_handler)
agent_wrapper_t * create_std_agent_wrapper (const std::string &name, class_handler_impl_t &agent_class, agent_t *agent)
template<class In_type, class Out_type>
int convert_input (oess_1::io::istream_t &input, unsigned int input_size, Out_type *to, unsigned int capacity, In_type *dummy)
 к другому типу.
template<>
int convert_input< oess_1::char_t, std::string > (oess_1::io::istream_t &input, unsigned int input_size, std::string *to, unsigned int capacity, oess_1::char_t *dummy)
template<>
int convert_input< oess_1::char_t, so_4::rt::comm_buf_t > (oess_1::io::istream_t &input, unsigned int input_size, comm_buf_t *to, unsigned int capacity, oess_1::char_t *dummy)
template<>
int convert_input< oess_1::stdsn::serializable_t, oess_1::stdsn::serializable_t > (oess_1::io::istream_t &input, unsigned int input_size, oess_1::stdsn::serializable_t *to, unsigned int capacity, oess_1::stdsn::serializable_t *dummy)
template<class Real_type, class Out_type>
void convert_output (oess_1::io::ostream_t &output, const Real_type *from, unsigned int capacity, unsigned int &items_written)
 значений в выходной поток.
template<>
void convert_output< std::string, oess_1::char_t > (oess_1::io::ostream_t &output, const std::string *from, unsigned int capacity, unsigned int &items_written)
template<>
void convert_output< comm_buf_t, oess_1::char_t > (oess_1::io::ostream_t &output, const comm_buf_t *from, unsigned int capacity, unsigned int &items_written)
template<>
void convert_output< oess_1::stdsn::serializable_t, oess_1::stdsn::serializable_t > (oess_1::io::ostream_t &output, const oess_1::stdsn::serializable_t *from, unsigned int capacity, unsigned int &items_written)
sys_dict_t * create_std_sys_dict ()
static threads_1::mrd_sem_t & kernel_lock ()
static const std::string & coop_ptr_to_coop_name (const agent_coop_t *coop)
 Предикат для std::transform.
agent_coop_tcoop_map_to_vector (const coop_map_t::value_type &a)
 Извлечение указателя на кооперацию из элемента карты коопераций.
static void make_cleanup_vector (coop_vector_t &all_coops, coop_vector_t &coops)
 Построение списка векторов коопераций при очистке словаря.
void coop_destroyer (agent_coop_t *coop)

Переменные

kernel_t * g_kernel
kernel_t * g_kernel


Типы

typedef std::set< std::string > so_4::rt::impl::bases_set_t
 

Тип множества имен базовых классов.

typedef std::vector< agent_coop_t * > so_4::rt::impl::coop_vector_t
 

Начиная с:
v.4.2.7

typedef std::vector< listener_destroyer_t * > so_4::rt::impl::listener_destroyer_ptr_list_t
 

Список указателей на listener_destroyer_t.

Начиная с:
v.4.2.6.1

typedef auto_ptr_3::soft_obj_ptr_t< agent_state_listener_t > so_4::rt::impl::listener_destroyer_t
 

Объект, который определяет время жизни слушателя состояния.

Начиная с:
v.4.2.6.1

typedef std::list< traits_destroyer_t * > so_4::rt::impl::traits_destroyer_ptr_list_t
 

Список указателей на traits_destroyer_t.

Начиная с:
v.4.2.6

typedef auto_ptr_3::soft_obj_ptr_t< agent_traits_t > so_4::rt::impl::traits_destroyer_t
 

Объект, который определяет время жизни свойства агента.

Начиная с:
v.4.2.6


Функции

template<class In_type, class Out_type>
int so_4::rt::impl::convert_input oess_1::io::istream_t &  input,
unsigned int  input_size,
Out_type *  to,
unsigned int  capacity,
In_type *  dummy
[inline]
 

к другому типу.

Будет специализироваться для некоторых типов преобразований.

Возвращает:
Значения элементов перечисления so_4::rt::impl::msg_fld_handler_t::result_t.
Аргументы:
input  Входной поток.
input_size  Количество элементов во входном потоке.
to  Приемник прочитанных значений.
capacity  Размер приемника в элементах.
dummy  Для распознования шаблона.

template<>
int so_4::rt::impl::convert_input< oess_1::char_t, so_4::rt::comm_buf_t > oess_1::io::istream_t &  input,
unsigned int  input_size,
comm_buf_t *  to,
unsigned int  capacity,
oess_1::char_t *  dummy
[inline]
 

Специальное преобразование byte-stream в so_4::rt::comm_buf_t.

Аргументы:
capacity  Игнорируется.

template<>
int so_4::rt::impl::convert_input< oess_1::char_t, std::string > oess_1::io::istream_t &  input,
unsigned int  input_size,
std::string *  to,
unsigned int  capacity,
oess_1::char_t *  dummy
[inline]
 

Специальное преобразование byte-stream в std::string.

Аргументы:
capacity  Игнорируется.

template<>
int so_4::rt::impl::convert_input< oess_1::stdsn::serializable_t, oess_1::stdsn::serializable_t > oess_1::io::istream_t &  input,
unsigned int  input_size,
oess_1::stdsn::serializable_t *  to,
unsigned int  capacity,
oess_1::stdsn::serializable_t *  dummy
[inline]
 

Специальное преобразование oess_stdsn-stream в oess_1::stdsn::serializable_t.

Аргументы:
capacity  Игнорируется.

template<class Real_type, class Out_type>
void so_4::rt::impl::convert_output oess_1::io::ostream_t &  output,
const Real_type *  from,
unsigned int  capacity,
unsigned int &  items_written
[inline]
 

значений в выходной поток.

Будет специализироваться для некоторых типов преобразований.

Аргументы:
output  Выходной поток.
from  Значения для преобразования.
capacity  Количество значений для преобразования.
items_written  Приемник количества реально записаных элементов типа Out_type

template<>
void so_4::rt::impl::convert_output< comm_buf_t, oess_1::char_t > oess_1::io::ostream_t &  output,
const comm_buf_t *  from,
unsigned int  capacity,
unsigned int &  items_written
[inline]
 

Аргументы:
output  Выходной поток.
from  Значения для преобразования.
capacity  Игнорируется.
items_written  Приемник количества реально записаных элементов типа oess_1::char_t.

template<>
void so_4::rt::impl::convert_output< oess_1::stdsn::serializable_t, oess_1::stdsn::serializable_t > oess_1::io::ostream_t &  output,
const oess_1::stdsn::serializable_t *  from,
unsigned int  capacity,
unsigned int &  items_written
[inline]
 

Аргументы:
output  Выходной поток.
from  Значения для преобразования.
capacity  Игнорируется.
items_written  Приемник количества реально записаных элементов типа oess_1::stdsn::serializable_t.

template<>
void so_4::rt::impl::convert_output< std::string, oess_1::char_t > oess_1::io::ostream_t &  output,
const std::string *  from,
unsigned int  capacity,
unsigned int &  items_written
[inline]
 

Аргументы:
output  Выходной поток.
from  Значения для преобразования.
capacity  Игнорируется.
items_written  Приемник количества реально записаных элементов типа oess_1::char_t.

agent_coop_t* so_4::rt::impl::coop_map_to_vector const coop_map_t::value_type &  a  ) 
 

Извлечение указателя на кооперацию из элемента карты коопераций.

Начиная с:
v.4.2.7

static const std::string& so_4::rt::impl::coop_ptr_to_coop_name const agent_coop_t *  coop  )  [static]
 

Предикат для std::transform.

Начиная с:
v.4.2.7

class_relation_handler_t * so_4::rt::impl::create_std_class_relation_handler  ) 
 

Создание стандартной реализации интерфейса class_relation_handler_t.

Возвращает:
Указатель на динамически созданный объект, который должен быть уничтожен посредством delete.

static void so_4::rt::impl::exclude_disabled_events_caller state_handler_impl_ptr_vector_t::value_type  a  )  [static]
 

Предикат для std::for_each.

Начиная с:
v.4.2.7
Вызывает метод state_handler_impl_t::exclude_disabled_events() для очередного описателя состояния.

void so_4::rt::impl::invalid_class_to_stderr_dumper const std_class_relation_handler_t::class_info_map_t::value_type &  a  ) 
 

Предикат для std::for_each.

Начиная с:
v.4.2.7
Если очередной класс не корректен, то на стандартный поток ошибок отображается описание причины некорректности.

static void so_4::rt::impl::make_cleanup_vector coop_vector_t &  all_coops,
coop_vector_t &  coops
[static]
 

Построение списка векторов коопераций при очистке словаря.

Начиная с:
v.4.2.7
Алгоритм построения списка векторов коопераций для удаления:
В первуй вектор помещаются кооперации, у которых нет потомков. При этом кооперации изымаются из списка потомков их родительских коопераций. В результате на каждом шаге кооперации, у которых были только прямые потомки, лишаются всех своих потомков и будут помещены в очередной map на следующем шаге. Шаги повторяются до тех пор, пока остаются кооперации.
Аргументы:
all_coops  Все кооперации на момент очистки словаря.
coops  Приемник для результата.

static bool so_4::rt::impl::state_need_no_merging const state_handler_impl_ptr_vector_t::value_type &  o  )  [static]
 

Предикат для std::remove_copy_if.

Начиная с:
v.4.2.7
Возвращает:
true, если состояние не нуждается в слиянии.


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