class EventSignalBase
クライアントは、イベントシグナルに接続してイベントを受信するか、イベントシグナルから切断してイベントの受信を停止できます。
構築時に、接続されたクライアントの数がそれぞれ 0 から 1 または 0 に変更されたときに呼び出される接続コールバックと切断コールバックを指定できます。
メンバー
EventSignalBase
構文: public inline EventSignalBase ( );
空の接続アクションと切断アクションを使用してイベント シグナルを構築します。
~EventSignalBase
構文: public inline virtual ~EventSignalBase ( );
デストラクターです。
RegisterCallback
構文: public inline CallbackToken RegisterCallback ( CallbackFunction callback );
この EventSignalBase にコールバックを登録し、一意のトークンを割り当てます。
パラメーター
-
callback
登録するコールバック。
返品ポリシー
後続の登録解除に使用できる、この登録に関連付けられている新しいトークン。
カスタムコールバックの登録解除
構文: public inline bool UnregisterCallback ( CallbackToken token );
存在する場合は、指定されたトークンに関連付けられているこの EventSource からのコールバックの登録を解除します。 登録時に RegisterCallback からトークンが返されます。
パラメーター
-
token
削除するコールバックに関連付けられているトークン。 このトークンは、登録時の RegisterCallback の戻り値によって提供されます。
返品ポリシー
この要求に応答してコールバックが登録解除されたかどうかを示す値。
operator()
構文: public inline void operator() ( T t );
関数呼び出し演算子。 接続されたクライアントに 指定された引数を使用してイベントを通知します。シグナル 参照してください。
パラメーター
- 通知するイベント引数を
t
します。
UnregisterAllCallbacks (すべてのコールバックを登録解除)
構文: public inline void UnregisterAllCallbacks ( );
登録されているすべてのコールバックの登録を解除します。
信号
構文: public inline void Signal ( T t );
接続されているすべてのコールバックに 指定された引数を持つイベントを通知します。
パラメーター
- 通知するイベント引数を
t
します。
IsConnected
構文: public inline bool IsConnected ( ) const;
コールバックが接続されているかどうかを確認します。
返品ポリシー
コールバックが接続されている場合は true
m_callbacks
構文: protected std::map< CallbackToken, CallbackFunction > m_callbacks;
m_nextCallbackToken
構文: protected CallbackToken m_nextCallbackToken;
m_mutex
構文: protected mutable std::recursive_mutex m_mutex;
CallbackFunction
構文: typedef CallbackFunction;
接続されたクライアントにイベントをシグナル通知するために使用されるコールバックの種類。
CallbackArgument
構文: typedef CallbackArgument;
コールバック イベントの引数の型。
CallbackToken
構文: typedef CallbackToken;
コールバックの登録、追跡、登録解除に使用される単調に増加するトークン。