다음을 통해 공유


class EventSignal

class EventSignal
  : public EventSignalBase< T >

클라이언트는 이벤트 신호에 연결하여 이벤트를 수신하거나 이벤트 신호에서 연결을 끊어 이벤트 수신을 중지할 수 있습니다.

생성 시 연결된 클라이언트 수가 각각 0에서 1 또는 0으로 변경될 때 호출되는 연결 및 연결 끊기 콜백을 제공할 수 있습니다.

멤버

EventSignal

구문: public inline EventSignal ( );

빈 레지스터 및 연결 끊기 콜백을 사용하여 이벤트 신호를 생성합니다.

EventSignal

구문: public inline EventSignal ( NotifyCallback_Type connectedAndDisconnected );

생성자입니다.

매개 변수

  • connectedAndDisconnected 연결된 클라이언트 수가 0에서 1로 또는 1에서 0으로 변경되는 경우 호출할 콜백

EventSignal

구문: public inline EventSignal ( NotifyCallback_Type connected , NotifyCallback_Type disconnected );

생성자입니다.

매개 변수

  • connected 연결된 클라이언트 수가 0에서 1로 변경되는 경우 호출할 콜백입니다.

  • disconnected 연결된 클라이언트 수가 1에서 0으로 변경되는 경우 호출할 콜백입니다.

operator +=

구문: public inline EventSignal< T > & operator+= ( CallbackFunction callback );

추가 할당 연산자 오버로드. 제공된 콜 백 콜백 을 이벤트 신호에 연결합니다. 연결도 참조 하세요.

매개 변수

  • callback 연결할 콜백입니다.

반환

이벤트 신호 참조.

연산자-=

구문: public inline EventSignal< T > & operator-= ( CallbackFunction callback );

빼기 할당 연산자 오버로드. 이벤트 신호에서 제공된 콜 백 콜백 의 연결을 끊습니다. 연결 끊기를 참조하세요.

매개 변수

  • callback 연결을 끊기 위한 콜백입니다.

반환

이벤트 신호 참조.

연결

구문: public inline void Connect ( CallbackFunction callback );

지정된 콜백 함수를 이벤트 신호에 연결하여 이벤트가 신호될 때 호출됩니다.

연결된 클라이언트 수가 0에서 1로 변경되면 제공된 경우 연결 콜백이 호출됩니다.

매개 변수

  • callback 연결할 콜백입니다.

연결 끊기

구문: public inline void Disconnect ( CallbackFunction callback );

지정된 콜백의 연결이 끊어집니다.

연결된 클라이언트 수가 1에서 0으로 변경되면 제공된 경우 연결 끊기 콜백이 호출됩니다.

매개 변수

  • callback 콜백 함수입니다.

DisconnectAll

구문: public inline void DisconnectAll ( );

등록된 모든 콜백의 연결을 끊습니다.

Signal

구문: public inline void Signal ( T t );

연결된 모든 콜백에 지정된 인수 t 를 사용하여 이벤트에 신호를 보냅니다.

매개 변수

  • t 신호를 보낼 이벤트 인수입니다.

CallbackFunction

구문: typedef CallbackFunction;

연결된 클라이언트에 이벤트를 신호하는 데 사용되는 콜백 유형입니다.

CallbackToken

구문: typedef CallbackToken;

콜백 등록, 추적 및 등록 취소에 사용되는 단조롭게 증가하는 토큰입니다.

NotifyCallback_Type

구문: typedef NotifyCallback_Type;

모든 클라이언트가 신호에 연결할 때 사용되는 콜백을 입력하거나(연결된 클라이언트 수가 0에서 1로 변경됨) 또는 마지막 클라이언트가 신호로부터 연결을 끊을 때 사용됩니다(연결된 클라이언트 수가 1에서 0으로 변경됨).