source_link_manager (Clase)source_link_manager Class

El objeto source_link_manager administra los vínculos de red del bloque de mensajería para los bloques ISource.The source_link_manager object manages messaging block network links to ISource blocks.

SintaxisSyntax

template<class _LinkRegistry>
class source_link_manager;

ParámetrosParameters

_LinkRegistry_LinkRegistry
El registro de vínculos de red.The network link registry.

MiembrosMembers

Definiciones de tipos públicasPublic Typedefs

NombreName DescripciónDescription
const_pointer Un tipo que proporciona un puntero a un const elemento de un source_link_manager objeto.A type that provides a pointer to a const element in a source_link_manager object.
const_reference Un tipo que proporciona una referencia a un const elemento almacenado en un source_link_manager objeto para leer y realizar operaciones const.A type that provides a reference to a const element stored in a source_link_manager object for reading and performing const operations.
iterator Un tipo que proporciona un iterador que puede leer o modificar cualquier elemento del source_link_manager objeto.A type that provides an iterator that can read or modify any element in the source_link_manager object.
type El tipo de registro de vínculo administrado por el source_link_manager objeto.The type of link registry being managed by the source_link_manager object.

Constructores públicosPublic Constructors

NombreName DescripciónDescription
source_link_managersource_link_manager Construye un objeto source_link_manager.Constructs a source_link_manager object.
~ source_link_manager destructor~source_link_manager Destructor Destruye el objeto source_link_manager.Destroys the source_link_manager object.

Métodos públicosPublic Methods

NOMBREName DescripciónDescription
addadd Agrega un vínculo de origen al source_link_manager objeto.Adds a source link to the source_link_manager object.
iniciabegin Devuelve un iterador al primer elemento del source_link_manager objeto.Returns an iterator to the first element in the source_link_manager object.
containscontains Busca network_link_registry un bloque especificado en el interior de este source_link_manager objeto.Searches the network_link_registry within this source_link_manager object for a specified block.
countcount Cuenta el número de bloques vinculados en el source_link_manager objeto.Counts the number of linked blocks in the source_link_manager object.
referencereference Adquiere una referencia en el source_link_manager objeto.Acquires a reference on the source_link_manager object.
register_target_blockregister_target_block Registra el bloque de destino que contiene este source_link_manager objeto.Registers the target block that holds this source_link_manager object.
emisiónrelease Libera la referencia en el source_link_manager objeto.Releases the reference on the source_link_manager object.
removeremove Quita un vínculo del source_link_manager objeto.Removes a link from the source_link_manager object.
set_boundset_bound Establece el número máximo de vínculos de origen que se pueden agregar a este source_link_manager objeto.Sets the maximum number of source links that can be added to this source_link_manager object.

ObservacionesRemarks

Actualmente, se cuentan las referencias de los bloques de origen.Currently, the source blocks are reference counted. Se trata de un contenedor de un network_link_registry objeto que permite el acceso simultáneo a los vínculos y proporciona la capacidad de hacer referencia a los vínculos a través de las devoluciones de llamada.This is a wrapper on a network_link_registry object that allows concurrent access to the links and provides the ability to reference the links through callbacks. target_block propagator_block Los bloques de mensajes deben usar esta clase para sus vínculos de origen.Message blocks ( target_blocks or propagator_blocks) should use this class for their source links.

Jerarquía de herenciaInheritance Hierarchy

source_link_manager

RequisitosRequirements

Encabezado: agents.hHeader: agents.h

Espacio de nombres: simultaneidadNamespace: concurrency

agréguelaadd

Agrega un vínculo de origen al source_link_manager objeto.Adds a source link to the source_link_manager object.

void add(_EType _Link);

ParámetrosParameters

_Link_Link
Un puntero a un bloque que se va a agregar.A pointer to a block to be added.

iniciabegin

Devuelve un iterador al primer elemento del source_link_manager objeto.Returns an iterator to the first element in the source_link_manager object.

iterator begin();

Valor devueltoReturn Value

Iterador que direcciona el primer elemento del source_link_manager objeto.An iterator addressing the first element in the source_link_manager object.

ObservacionesRemarks

Un vínculo indica el estado final del iterador NULL .The end state of the iterator is indicated by a NULL link.

tuvieracontains

Busca network_link_registry un bloque especificado en el interior de este source_link_manager objeto.Searches the network_link_registry within this source_link_manager object for a specified block.

bool contains(_EType _Link);

ParámetrosParameters

_Link_Link
Un puntero a un bloque que se va a buscar en el source_link_manager objeto.A pointer to a block that is to be searched for in the source_link_manager object.

Valor devueltoReturn Value

true Si se encontró el bloque especificado; false en caso contrario,.true if the specified block was found, false otherwise.

contabilizacount

Cuenta el número de bloques vinculados en el source_link_manager objeto.Counts the number of linked blocks in the source_link_manager object.

size_t count();

Valor devueltoReturn Value

El número de bloques vinculados en el source_link_manager objeto.The number of linked blocks in the source_link_manager object.

referenciareference

Adquiere una referencia en el source_link_manager objeto.Acquires a reference on the source_link_manager object.

void reference();

register_target_blockregister_target_block

Registra el bloque de destino que contiene este source_link_manager objeto.Registers the target block that holds this source_link_manager object.

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

ParámetrosParameters

_PTarget_PTarget
El bloque de destino que contiene este source_link_manager objeto.The target block holding this source_link_manager object.

emisiónrelease

Libera la referencia en el source_link_manager objeto.Releases the reference on the source_link_manager object.

void release();

retirarremove

Quita un vínculo del source_link_manager objeto.Removes a link from the source_link_manager object.

bool remove(_EType _Link);

ParámetrosParameters

_Link_Link
Un puntero a un bloque que se va a quitar, si se encuentra.A pointer to a block to be removed, if found.

Valor devueltoReturn Value

true es si se ha encontrado y quitado el vínculo, de false lo contrario, es.true if the link was found and removed, false otherwise.

set_boundset_bound

Establece el número máximo de vínculos de origen que se pueden agregar a este source_link_manager objeto.Sets the maximum number of source links that can be added to this source_link_manager object.

void set_bound(size_t _MaxLinks);

ParámetrosParameters

_MaxLinks_MaxLinks
Número máximo de vínculos.The maximum number of links.

Construye un objeto source_link_manager.Constructs a source_link_manager object.

source_link_manager();

Destruye el objeto source_link_manager.Destroys the source_link_manager object.

~source_link_manager();

Consulte tambiénSee also

Espacio de nombres de simultaneidadconcurrency Namespace
single_link_registry (clase)single_link_registry Class
multi_link_registry (clase)multi_link_registry Class