multi_link_registry – třída
Objekt multi_link_registry
je objekt network_link_registry
, který spravuje více zdrojových bloků nebo více cílových bloků.
Syntaxe
template<class _Block>
class multi_link_registry : public network_link_registry<_Block>;
Parametry
_Blokovat
Datový typ bloku uložený v objektu multi_link_registry
.
Členové
Veřejné konstruktory
Název | Popis |
---|---|
multi_link_registry | multi_link_registry Vytvoří objekt. |
~multi_link_registry Destruktor | multi_link_registry Zničí objekt. |
Veřejné metody
Název | Popis |
---|---|
add | Přidá k objektu multi_link_registry odkaz. (Přepsání network_link_registry::add.) |
začít | Vrátí iterátor na první prvek objektu multi_link_registry . (Přepsání network_link_registry::begin.) |
obsahuje | multi_link_registry Vyhledá objekt pro zadaný blok. (Přepsání network_link_registry::contains.) |
count | Spočítá počet položek v objektu multi_link_registry . (Přepsání network_link_registry::count.) |
remove | Odebere z objektu multi_link_registry odkaz. (Přepsání network_link_registry::remove.) |
set_bound | Nastaví horní mez počtu odkazů, které multi_link_registry objekt může obsahovat. |
Hierarchie dědičnosti
multi_link_registry
Požadavky
Hlavička: agents.h
Namespace: souběžnost
add
Přidá k objektu multi_link_registry
odkaz.
virtual void add(_EType _Link);
Parametry
_Propojit
Ukazatel na blok, který se má přidat.
Poznámky
Metoda vyvolá výjimku invalid_link_target , pokud je odkaz již v registru, nebo pokud vazba již byla nastavena s set_bound
funkcí a propojení bylo od té doby odebráno.
začít
Vrátí iterátor na první prvek objektu multi_link_registry
.
virtual iterator begin();
Návratová hodnota
Iterátor adresuje první prvek objektu multi_link_registry
.
Poznámky
Koncový stav je označen odkazem NULL
.
obsahuje
multi_link_registry
Vyhledá objekt pro zadaný blok.
virtual bool contains(_EType _Link);
Parametry
_Propojit
Ukazatel na blok, který se má v objektu multi_link_registry
vyhledat.
Návratová hodnota
true
pokud byl zadaný blok nalezen, false
jinak.
count
Spočítá počet položek v objektu multi_link_registry
.
virtual size_t count();
Návratová hodnota
Počet položek v objektu multi_link_registry
.
multi_link_registry
multi_link_registry
Vytvoří objekt.
multi_link_registry();
~multi_link_registry
multi_link_registry
Zničí objekt.
virtual ~multi_link_registry();
Poznámky
Metoda vyvolá výjimku invalid_operation , pokud je volána před odebráním všech odkazů.
remove
Odebere z objektu multi_link_registry
odkaz.
virtual bool remove(_EType _Link);
Parametry
_Propojit
Ukazatel na blok, který se má odebrat, pokud je nalezen.
Návratová hodnota
true
pokud byl odkaz nalezen a odebrán, false
jinak.
set_bound
Nastaví horní mez počtu odkazů, které multi_link_registry
objekt může obsahovat.
void set_bound(size_t _MaxLinks);
Parametry
_MaxLinks
Maximální počet odkazů, které multi_link_registry
objekt může obsahovat.
Poznámky
Po nastavení vazby způsobí zrušení propojení položky multi_link_registry
objektu za účelem zadání neměnného stavu, kdy další volání add
invalid_link_target
vyvolá výjimku.