DRT_EVENT_DATA 構造体 (drt.h)

DRT_EVENT_DATA構造体には、DrtOpen に渡された hEvent でアプリケーションがイベント シグナルを受信した後に DrtGetEventData を呼び出して返されるイベント データが含まれます

リーフ セットの変更、ローカルに登録されたキーの状態、またはローカル DRT インスタンスの状態を定義する構造体を含む名前のない共用体が含まれます。

構文

typedef struct drt_event_data_tag {
  DRT_EVENT_TYPE type;
  HRESULT        hr;
  PVOID          pvContext;
  union {
    struct {
      DRT_LEAFSET_KEY_CHANGE_TYPE change;
      DRT_DATA                    localKey;
      DRT_DATA                    remoteKey;
    } leafsetKeyChange;
    struct {
      DRT_REGISTRATION_STATE state;
      DRT_DATA               localKey;
    } registrationStateChange;
    struct {
      DRT_STATUS status;
      struct {
        ULONG             cntAddress;
        PSOCKADDR_STORAGE pAddresses;
      } bootstrapAddresses;
    } statusChange;
  };
} DRT_EVENT_DATA, *PDRT_EVENT_DATA;

メンバー

type

イベントの種類を指定する DRT_EVENT_TYPE 列挙。

hr

結果が検索内の最後の結果であるかどうかを示す、イベントが通知された操作の HRESULT。

pvContext

イベントを生成した API に渡されるコンテキスト データへのポインター。 たとえば、DrtOpenpvContext パラメーターにデータが渡された場合、そのデータはこのフィールドを介して返されます。

leafsetKeyChange

この構造体は、ローカルに登録されたキーのリーフ セットの変更を通知するイベントが発生したときに表示されます。DRT_EVENT_DATA構造体の type フィールドは DRT_EVENT_LEAFSET_KEY_CHANGED に設定されます。

leafsetKeyChange.change

発生したキー変更の種類を指定します。

leafsetKeyChange.localKey

変更されたリーフ セットに関連付けられているローカル キーを指定します。

leafsetKeyChange.remoteKey

変更されたリモート キーを指定します。

registrationStateChange

この構造体は、ローカル キー登録の変更を通知するためにイベントが発生したときに表示されます。DRT_EVENT_DATA構造体の type フィールドは DRT_EVENT_REGISTRATION_STATE_CHANGED に設定されます。

registrationStateChange.state

発生した登録状態の変更の種類を指定します。

registrationStateChange.localKey

変更された登録に関連付けられているローカル キーを指定します。

statusChange

この構造体は、ローカル DRT インスタンスの状態変更を通知するためにイベントが発生したときに表示されます。DRT_EVENT_DATA構造体の type フィールドが DRT_EVENT_STATUS_CHANGED に設定されています。

statusChange.status

ローカル DRT インスタンスの現在の DRT_STATUS を格納します。

statusChange.bootstrapAddresses

この構造体には、DRT がメッシュを結合しようとしたときにブートストラップ プロバイダーによって返されるアドレスが含まれます。 この構造は、DRT がDRT_ALONE状態に移行した場合にのみ完了します。 この構造の内容を使用して、ローカル DRT インスタンスとメッシュに既に存在する他のノードとの間の接続の問題を診断できます。

statusChange.bootstrapAddresses.cntAddress

pAddresses 内のアドレスの数を格納します。

statusChange.bootstrapAddresses.pAddresses

ブートストラップ プロバイダーによって返されるアドレスの配列を格納します。

要件

要件
サポートされている最小のクライアント Windows 7 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
Header drt.h

こちらもご覧ください

DRT_EVENT_TYPE

DRT_STATUS

DrtGetEventData

DrtOpen