Partager via


classe EventSignalBase

Les clients peuvent se connecter au signal d’événement pour recevoir des événements, ou se déconnecter du signal d’événement pour arrêter de recevoir des événements.

Au moment de la construction, des rappels de connexion et de déconnexion peuvent être fournis qui sont appelés lorsque le nombre de clients connectés passe de zéro à un ou un à zéro, respectivement.

Membres

EventSignalBase

Syntaxe : public inline EventSignalBase ( );

Construit un signal d’événement avec des actions de connexion et de déconnexion vides.

~EventSignalBase

Syntaxe : public inline virtual ~EventSignalBase ( );

Destructeur.

RegisterCallback

Syntaxe : public inline CallbackToken RegisterCallback ( CallbackFunction callback );

Inscrit un rappel à cet EventSignalBase et lui attribue un jeton unique.

Paramètres

  • callback Rappel à inscrire.

Retours

Nouveau jeton associé à cette inscription qui peut être utilisé pour la désinscription ultérieure.

Annuler l’inscriptionCallback

Syntaxe : public inline bool UnregisterCallback ( CallbackToken token );

Le cas échéant, annule l’inscription d’un rappel à partir de cet EventSource associé au jeton fourni. Les jetons sont retournés par RegisterCallback au moment de l’inscription.

Paramètres

  • token Jeton associé au rappel à supprimer. Ce jeton est fourni par la valeur de retour de RegisterCallback au moment de l’inscription.

Retours

Valeur indiquant si un rappel a été désinscrit en réponse à cette demande.

operator()

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

Opérateur d’appel de fonction. Signale l’événement avec des arguments donnés t aux clients connectés. Consultez également Signal.

Paramètres

  • t Arguments d’événement à signaler.

Annuler l’inscriptionAllCallbacks

Syntaxe : public inline void UnregisterAllCallbacks ( );

Annule l’inscription de tous les rappels inscrits.

Signal

Syntaxe : public inline void Signal ( T t );

Signale l’événement avec des arguments donnés t à tous les rappels connectés.

Paramètres

  • t Arguments d’événement à signaler.

IsConnected

Syntaxe : public inline bool IsConnected ( ) const;

Vérifie si un rappel est connecté.

Retours

true si un rappel est connecté

m_callbacks

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

m_nextCallbackToken

Syntaxe : protected CallbackToken m_nextCallbackToken;

m_mutex

Syntaxe : protected mutable std::recursive_mutex m_mutex;

CallbackFunction

Syntaxe : typedef CallbackFunction;

Type de rappel utilisé pour signaler l’événement aux clients connectés.

CallbackArgument

Syntaxe : typedef CallbackArgument;

Type d’argument pour l’événement de rappel.

CallbackToken

Syntaxe : typedef CallbackToken;

Jeton à augmentation monotone utilisé pour l’inscription, le suivi et la désinscription des rappels.