Udostępnij za pośrednictwem


class EventSignal

class EventSignal
  : public EventSignalBase< T >

Klienci mogą łączyć się z sygnałem zdarzenia w celu odbierania zdarzeń lub odłączyć się od sygnału zdarzenia, aby zatrzymać odbieranie zdarzeń.

W czasie budowy można podać wywołania zwrotne połączeń i rozłączania, które są wywoływane, gdy liczba połączonych klientów zmienia się odpowiednio z zera na jeden lub jeden do zera.

Elementy członkowskie

ZdarzeniePodpisane

Składnia: public inline EventSignal ( );

Tworzy sygnał zdarzenia z pustymi rejestrami i rozłącza wywołania zwrotne.

ZdarzeniePodpisane

Składnia: public inline EventSignal ( NotifyCallback_Type connectedAndDisconnected );

Konstruktor.

Parametry

  • connectedAndDisconnected Wywołanie zwrotne, które ma być wywoływane, jeśli liczba połączonych klientów zmienia się z zera na jedną lub od zera

ZdarzeniePodpisane

Składnia: public inline EventSignal ( NotifyCallback_Type connected , NotifyCallback_Type disconnected );

Konstruktor.

Parametry

  • connected Wywołanie zwrotne, które ma być wywoływane, jeśli liczba połączonych klientów zmienia się z zera na jeden.

  • disconnected Wywołanie zwrotne, które ma być wywoływane, jeśli liczba połączonych klientów zmieni się z jednego na zero.

operator+=

Składnia: public inline EventSignal< T > & operator+= ( CallbackFunction callback );

Przeciążenie operatora przypisania dodawania. Łączy podane wywołanie zwrotne wywołania zwrotnego z sygnałem zdarzenia, zobacz też Connect (Nawiązywanie połączenia).

Parametry

  • callback Wywołanie zwrotne w celu nawiązania połączenia.

Zwraca

Odwołanie sygnału zdarzenia.

operator-=

Składnia: public inline EventSignal< T > & operator-= ( CallbackFunction callback );

Przeciążenie operatora przypisania odejmowania. Rozłącza podane wywołanie zwrotne wywołania zwrotnego z sygnału zdarzenia, zobacz też Disconnect (Rozłącz).

Parametry

  • callback Wywołanie zwrotne w celu rozłączenia.

Zwraca

Odwołanie sygnału zdarzenia.

Połącz

Składnia: public inline void Connect ( CallbackFunction callback );

Łączy daną funkcję wywołania zwrotnego z sygnałem zdarzenia, która ma być wywoływana, gdy zdarzenie jest sygnalizowane.

Jeśli liczba połączonych klientów zmieni się z zera na jeden, wywołanie zwrotne połączenia zostanie wywołane, jeśli zostanie podane.

Parametry

  • callback Wywołanie zwrotne w celu nawiązania połączenia.

Rozłącz

Składnia: public inline void Disconnect ( CallbackFunction callback );

Rozłącza się z wywołaniem zwrotnym.

Gdy liczba połączonych klientów zmieni się z jednego na zero, wywołanie zwrotne rozłączenia zostanie wywołane, jeśli zostanie podane.

Parametry

  • callback Funkcja wywołania zwrotnego.

Rozłączwszystkie

Składnia: public inline void DisconnectAll ( );

Rozłącza wszystkie zarejestrowane wywołania zwrotne.

Sygnału

Składnia: public inline void Signal ( T t );

Sygnalizuje zdarzenie z podanymi argumentami t do wszystkich połączonych wywołań zwrotnych.

Parametry

  • t Argumenty zdarzeń do sygnalizowania.

CallbackFunction

Składnia: typedef CallbackFunction;

Typ wywołania zwrotnego używany do sygnalizowania zdarzenia do połączonych klientów.

Wywołanie zwrotneToken

Składnia: typedef CallbackToken;

Monotonicznie zwiększający token używany do rejestracji, śledzenia i wyrejestrowania wywołań zwrotnych.

NotifyCallback_Type

Składnia: typedef NotifyCallback_Type;

Typ wywołań zwrotnych używanych, gdy dowolny klient łączy się z sygnałem (liczba połączonych klientów zmienia się od zera do jednego) lub ostatni klient rozłącza się z sygnałem (liczba połączonych klientów zmienia się z jednego na zero).