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.
Elementy członkowskie
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 const source_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. |
zaczynać | Zwraca iterator do pierwszego elementu w source_link_manager obiekcie. |
Contains | Wyszukuje network_link_registry w tym source_link_manager obiekcie określony blok. |
count | Zlicza połączone bloki w source_link_manager obiekcie. |
odniesienie | Uzyskuje odwołanie do source_link_manager obiektu. |
register_target_block | Rejestruje blok docelowy, który zawiera ten source_link_manager obiekt. |
zwolnić | 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_block
s lub propagator_block
s) 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
_Łącze
Wskaźnik do dodania bloku.
zaczynać
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
_Łącze
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.
zwolnić
Zwalnia odwołanie do source_link_manager
obiektu.
void release();
remove
Usuwa łącze z source_link_manager
obiektu.
bool remove(_EType _Link);
Parametry
_Łącze
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