Partilhar via


classe EventSignalBase

Os clientes podem ligar-se ao sinal de evento para receber eventos ou desligar-se do sinal de evento para deixar de receber eventos.

No momento da construção, podem ser fornecidas chamadas de retorno de ligação e desconexão que são chamadas quando o número de clientes ligados muda de zero para um ou um para zero, respetivamente.

Membros

EventSignalBase

Sintaxe: public inline EventSignalBase ( );

Constrói um sinal de evento com ações de ligação e desconexão vazias.

~EventSignalBase

Sintaxe: public inline virtual ~EventSignalBase ( );

Destrutor.

RegisterCallback

Sintaxe: public inline CallbackToken RegisterCallback ( CallbackFunction callback );

Regista uma chamada de retorno para este EventSignalBase e atribui-lhe um token exclusivo.

Parâmetros

  • callback A chamada de retorno a registar.

Devoluções

O novo token associado a este registo que pode ser utilizado para a anulação subsequente.

Anular a Chamada de Retorno

Sintaxe: public inline bool UnregisterCallback ( CallbackToken token );

Se estiver presente, anula o registo de uma chamada de retorno deste EventSource associado ao token fornecido. Os tokens são devolvidos a partir de RegisterCallback no momento do registo.

Parâmetros

  • token O token associado à chamada de retorno a ser removido. Este token é fornecido pelo valor devolvido de RegisterCallback no momento do registo.

Devoluções

Um valor que indica se alguma chamada de retorno não foi registada em resposta a este pedido.

operador()

Sintaxe: public inline void operator() ( T t );

Operador de chamada de função. Sinaliza o evento com determinados argumentos t para clientes ligados, veja também Signal.

Parâmetros

  • t Argumentos de evento para sinalizar.

UnregisterAllCallbacks

Sintaxe: public inline void UnregisterAllCallbacks ( );

Anule o registo de todas as chamadas de retorno registadas.

Sinal

Sintaxe: public inline void Signal ( T t );

Assinala o evento com determinados argumentos t para todas as chamadas de retorno ligadas.

Parâmetros

  • t Argumentos de evento para sinalizar.

IsConnected

Sintaxe: public inline bool IsConnected ( ) const;

Verifica se uma chamada de retorno está ligada.

Devoluções

true se uma chamada de retorno estiver ligada

m_callbacks

Sintaxe: protected std::map< CallbackToken, CallbackFunction > m_callbacks;

m_nextCallbackToken

Sintaxe: protected CallbackToken m_nextCallbackToken;

m_mutex

Sintaxe: protected mutable std::recursive_mutex m_mutex;

CallbackFunction

Sintaxe: typedef CallbackFunction;

Tipo de chamada de retorno que é utilizado para sinalizar o evento para clientes ligados.

CallbackArgument

Sintaxe: typedef CallbackArgument;

O tipo de argumento para o evento de chamada de retorno.

CallbackToken

Sintaxe: typedef CallbackToken;

Um token de aumento monotonicamente utilizado para registo, controlo e anulação de chamadas de retorno.