Sdílet prostřednictvím


třída EventSignalBase

Klienti se můžou připojit k signálu události, aby mohli přijímat události, nebo se od signálu události odpojit, aby zastavili příjem událostí.

V době výstavby se dají připojit a odpojit zpětná volání, která se volají, když se počet připojených klientů změní z nuly na jeden nebo jeden na nulu.

Členové

EventSignalBase

Syntaxe: public inline EventSignalBase ( );

Vytvoří signál události s prázdnými akcemi připojení a odpojení.

~EventSignalBase

Syntaxe: public inline virtual ~EventSignalBase ( );

Destruktor.

RegisterCallback

Syntaxe: public inline CallbackToken RegisterCallback ( CallbackFunction callback );

Zaregistruje zpětné volání této databáze EventSignalBase a přiřadí mu jedinečný token.

Parametry

  • callback Zpětné volání, které se má zaregistrovat.

Návraty

Nový token přidružený k této registraci, který lze použít pro následné zrušení registrace.

Zrušit registraciCallback

Syntaxe: public inline bool UnregisterCallback ( CallbackToken token );

Pokud je k dispozici, zruší registraci zpětného volání z tohoto EventSource přidruženého k poskytnutému tokenu. Tokeny se vrátí z RegisterCallback v okamžiku registrace.

Parametry

  • token Token přidružený ke zpětnému volání, které se má odebrat. Tento token poskytuje návratová hodnota RegisterCallback v době registrace.

Návraty

Hodnota označující, jestli byla v reakci na tento požadavek zrušena registrace některého zpětného volání.

operator()

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

Operátor volání funkce. Signalizuje událost s danými argumenty t připojeným klientům, viz také Signal.

Parametry

  • t Argumenty událostí, které se mají signalizovat.

Zrušení registraceAllCallbacks

Syntaxe: public inline void UnregisterAllCallbacks ( );

Zruší registraci všech registrovaných zpětných volání.

Signál

Syntaxe: public inline void Signal ( T t );

Signalizuje událost s danými argumenty t všem připojeným zpětným voláním.

Parametry

  • t Argumenty událostí, které se mají signalizovat.

IsConnected

Syntaxe: public inline bool IsConnected ( ) const;

Zkontroluje, jestli je připojené zpětné volání.

Návraty

true, pokud je připojeno zpětné volání

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;

Funkce zpětného volání

Syntaxe: typedef CallbackFunction;

Typ zpětného volání, který se používá pro signalizaci události pro připojené klienty.

CallbackArgument

Syntaxe: typedef CallbackArgument;

Typ argumentu pro událost zpětného volání.

CallbackToken

Syntaxe: typedef CallbackToken;

Monotónně rostoucí token používaný k registraci, sledování a zrušení registrace zpětných volání.