Класс source_link_manager

Объект source_link_manager управляет сетевыми соединениями блоков обмена сообщениями с блоками ISource.

Синтаксис

template<class _LinkRegistry>
class source_link_manager;

Параметры

_LinkRegistry
Реестр сетевых ссылок.

Участники

Общедоступные определения типов

Имя Описание
const_pointer Тип, предоставляющий указатель на const элемент в объекте source_link_manager .
const_reference Тип, предоставляющий ссылку на const элемент, хранящийся в source_link_manager объекте для чтения и выполнения операций констант.
iterator Тип, предоставляющий итератор, который может считывать или изменять любой элемент в объекте source_link_manager .
type Тип реестра ссылок, управляемый source_link_manager объектом.

Открытые конструкторы

Имя Описание
source_link_manager Формирует объект source_link_manager.
Деструктор ~source_link_manager Уничтожает source_link_manager объект.

Открытые методы

Имя Описание
добавление Добавляет исходную ссылку на source_link_manager объект.
begin Возвращает итератор первому элементу source_link_manager объекта.
contains network_link_registry Выполняет поиск в этом source_link_manager объекте для указанного блока.
count Подсчитывает количество связанных блоков в объекте source_link_manager .
reference Получает ссылку на source_link_manager объект.
register_target_block Регистрирует целевой блок, содержащий этот source_link_manager объект.
release Освобождает ссылку на source_link_manager объект.
remove Удаляет ссылку из source_link_manager объекта.
set_bound Задает максимальное количество исходных ссылок, которые можно добавить в этот source_link_manager объект.

Замечания

В настоящее время исходные блоки считаются ссылочными. Это оболочка для network_link_registry объекта, который позволяет одновременно обращаться к ссылкам и предоставляет возможность ссылаться на ссылки через обратные вызовы. Блоки сообщений ( target_blocks или propagator_blocks) должны использовать этот класс для их исходных ссылок.

Иерархия наследования

source_link_manager

Требования

Заголовок: agents.h

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

add

Добавляет исходную ссылку на source_link_manager объект.

void add(_EType _Link);

Параметры

_Ссылку
Указатель на добавленный блок.

begin

Возвращает итератор первому элементу source_link_manager объекта.

iterator begin();

Возвращаемое значение

Итератор, обращаюющийся к первому элементу source_link_manager объекта.

Замечания

Конечное состояние итератора указывается ссылкой NULL .

содержит

network_link_registry Выполняет поиск в этом source_link_manager объекте для указанного блока.

bool contains(_EType _Link);

Параметры

_Ссылку
Указатель на блок, который должен находиться в объекте source_link_manager .

Возвращаемое значение

true Значение , если указанный блок найден, false в противном случае.

count

Подсчитывает количество связанных блоков в объекте source_link_manager .

size_t count();

Возвращаемое значение

Количество связанных блоков в объекте source_link_manager .

Получение

Получает ссылку на source_link_manager объект.

void reference();

register_target_block

Регистрирует целевой блок, содержащий этот source_link_manager объект.

void register_target_block(_Inout_ ITarget<typename _Block::source_type>* _PTarget);

Параметры

_PTarget
Целевой блок, содержащий этот source_link_manager объект.

выпуска

Освобождает ссылку на source_link_manager объект.

void release();

remove

Удаляет ссылку из source_link_manager объекта.

bool remove(_EType _Link);

Параметры

_Ссылку
Указатель на блок, который нужно удалить, если он найден.

Возвращаемое значение

true Значение , если ссылка найдена и удалена, false в противном случае.

set_bound

Задает максимальное количество исходных ссылок, которые можно добавить в этот source_link_manager объект.

void set_bound(size_t _MaxLinks);

Параметры

_MaxLinks
Максимальное количество ссылок.

source_link_manager

Формирует объект source_link_manager.

source_link_manager();

~source_link_manager

Уничтожает source_link_manager объект.

~source_link_manager();

См. также

Пространство имен concurrency
Класс single_link_registry
Класс multi_link_registry