Udostępnij za pośrednictwem


source_link_manager — Klasa

Obiekt source_link_manager zarządza łączami sieciowymi bloku komunikatów do ISource bloków.

Składnia

template<class _LinkRegistry>
class source_link_manager;

Parametry

_LinkRegistry
Rejestr łączy sieciowych.

Członkowie

Definicje typów publicznych

Nazwa/nazwisko opis
const_pointer Typ, który dostarcza wskaźnik do const elementu w source_link_manager obiekcie.
const_reference Typ, który zawiera odwołanie do elementu przechowywanego constsource_link_manager w obiekcie do odczytywania i wykonywania operacji const.
iterator Typ, który udostępnia iterator, który może odczytywać lub modyfikować dowolny element w source_link_manager obiekcie.
type Typ rejestru łączy zarządzany przez source_link_manager obiekt.

Konstruktory publiczne

Nazwa/nazwisko opis
source_link_manager source_link_manager Tworzy obiekt.
~source_link_manager Destruktor source_link_manager Niszczy obiekt.

Metody publiczne

Nazwa/nazwisko opis
add Dodaje link źródłowy do source_link_manager obiektu.
Rozpocząć Zwraca iterator do pierwszego elementu w source_link_manager obiekcie.
Zawiera Wyszukuje network_link_registry w tym source_link_manager obiekcie określony blok.
count Zlicza połączone bloki w source_link_manager obiekcie.
Odwołanie Uzyskuje odwołanie do source_link_manager obiektu.
register_target_block Rejestruje blok docelowy, który zawiera ten source_link_manager obiekt.
Wydania Zwalnia odwołanie do source_link_manager obiektu.
remove Usuwa łącze z source_link_manager obiektu.
set_bound Ustawia maksymalną liczbę łączy źródłowych, które można dodać do tego source_link_manager obiektu.

Uwagi

Obecnie bloki źródłowe są zliczane. Jest to otoka network_link_registry obiektu, który umożliwia współbieżny dostęp do łączy i zapewnia możliwość odwołowania się do linków za pośrednictwem wywołań zwrotnych. Bloki komunikatów ( target_blocks lub propagator_blocks) powinny używać tej klasy dla ich linków źródłowych.

Hierarchia dziedziczenia

source_link_manager

Wymagania

Nagłówek: agents.h

Przestrzeń nazw: współbieżność

add

Dodaje link źródłowy do source_link_manager obiektu.

void add(_EType _Link);

Parametry

_Link
Wskaźnik do dodania bloku.

Rozpocząć

Zwraca iterator do pierwszego elementu w source_link_manager obiekcie.

iterator begin();

Wartość zwracana

Iterator odnoszący się do pierwszego elementu w source_link_manager obiekcie.

Uwagi

Stan końcowy iteratora jest wskazywany NULL przez łącze.

zawiera

Wyszukuje network_link_registry w tym source_link_manager obiekcie określony blok.

bool contains(_EType _Link);

Parametry

_Link
Wskaźnik do bloku, który ma być wyszukiwany w source_link_manager obiekcie.

Wartość zwracana

true jeśli określony blok został znaleziony, false w przeciwnym razie.

count

Zlicza połączone bloki w source_link_manager obiekcie.

size_t count();

Wartość zwracana

Liczba połączonych bloków w source_link_manager obiekcie.

reference

Uzyskuje odwołanie do source_link_manager obiektu.

void reference();

register_target_block

Rejestruje blok docelowy, który zawiera ten source_link_manager obiekt.

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

Parametry

_PTarget
Blok docelowy przechowujący ten source_link_manager obiekt.

Wydania

Zwalnia odwołanie do source_link_manager obiektu.

void release();

remove

Usuwa łącze z source_link_manager obiektu.

bool remove(_EType _Link);

Parametry

_Link
Wskaźnik do usunięcia bloku, jeśli zostanie znaleziony.

Wartość zwracana

true jeśli link został znaleziony i usunięty, false w przeciwnym razie.

set_bound

Ustawia maksymalną liczbę łączy źródłowych, które można dodać do tego source_link_manager obiektu.

void set_bound(size_t _MaxLinks);

Parametry

_MaxLinks
Maksymalna liczba łączy.

source_link_manager

source_link_manager Tworzy obiekt.

source_link_manager();

~source_link_manager

source_link_manager Niszczy obiekt.

~source_link_manager();

Zobacz też

Przestrzeń nazw współbieżności
single_link_registry, klasa
multi_link_registry, klasa