次の方法で共有


DXGKDDI_MIRACAST_CREATE_CONTEXT コールバック関数 (dispmprt.h)

Miracast デバイスのカーネル モード コンテキストを作成します。

構文

DXGKDDI_MIRACAST_CREATE_CONTEXT DxgkddiMiracastCreateContext;

NTSTATUS DxgkddiMiracastCreateContext(
  [in]  PVOID DriverContext,
  [in]  DXGK_MIRACAST_DISPLAY_CALLBACKS *MiracastCallbacks,
  [out] PVOID *MiracastContext,
  [out] ULONG *TargetId
)
{...}

パラメーター

[in] DriverContext

ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーの DxgkDdiAddDevice 関数は、以前に DirectX グラフィックス カーネル サブシステムにこのハンドルを提供しました。

[in] MiracastCallbacks

ドライバーが呼び出すことができるコールバック関数へのポインターを持つ DXGK_MIRACAST_DISPLAY_CALLBACKS 構造体を保持するオペレーティング システム提供のバッファーへのポインター。

[out] MiracastContext

ドライバーがこの Miracast デバイス インスタンスに割り当てたコンテキストのアドレスを保持する、オペレーティング システムによって提供されるバッファーへのポインター。

[out] TargetId

Miracast デバイスが接続されている VidPN ターゲットの ID を保持するオペレーティング システムによって提供されるバッファーへのポインター。 ドライバーは、オペレーティング システムがデバイスの初期化中に DxgkDdiQueryChildRelations 関数を呼び出すときに D3DKMDT_VOT_MIRACAST 型としてこのターゲットを報告する必要があります。

戻り値

成功した場合は STATUS_SUCCESS を返します。 それ以外の場合は、Ntstatus.h で定義されている次のいずれかのエラー コードが返されます。

リターン コード 形容
STATUS_RESOURCE_IN_USE Miracast 接続セッションをサポートするために必要なハードウェア リソースは、現在使用できません。

備考

この関数が呼び出されると、ディスプレイ ミニポート ドライバーは、Miracast 接続済みセッションをサポートするために必要なすべてのカーネル モード リソースを準備する必要があります。

同期

オペレーティング システムは、DxgkDdiMiracastCreateContextDxgkDdiMiracastDestroyContext、および DxgkDdiMiracastIoControl をグループ化し、Miracast クラスとして機能します。 オペレーティング システムでは、これらの関数が、スレッド処理と同期の第 2 レベルので定義されている第 2 レベルの同期モードに従っていることを保証します。 これらの関数は、他のレベル 0、1、またはレベル 2 関数の他のクラスが別のスレッド コンテキストで呼び出されている場合に呼び出すことができます。 ただし、これらのレベル 2 の Miracast クラス関数のうち、一度に呼び出すことができる関数は 1 つだけです。

必要条件

要件 価値
サポートされる最小クライアント Windows 8.1
サポートされる最小サーバー Windows Server 2012 R2
ターゲット プラットフォーム デスクトップ
ヘッダー dispmprt.h (Dispmprt.h を含む)
IRQL PASSIVE_LEVEL

関連項目

DXGK_MIRACAST_DISPLAY_CALLBACKS

DxgkDdiAddDevice

DxgkDdiQueryChildRelations