次の方法で共有


DXGKDDI_CREATEDEVICE コールバック関数 (d3dkmddi.h)

DXGKDDI_CREATEDEVICE関数は、ディスプレイ ミニポート ドライバーのデバイス固有の関数の呼び出しで後で使用されるグラフィックス コンテキスト デバイスを作成します。

構文

DXGKDDI_CREATEDEVICE DxgkddiCreatedevice;

NTSTATUS DxgkddiCreatedevice(
  IN_CONST_HANDLE hAdapter,
  INOUT_PDXGKARG_CREATEDEVICE pCreateDevice
)
{...}

パラメーター

hAdapter

[入力]ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーは、以前に DxgiDdiAddDevice 関数の MiniportDeviceContext 出力パラメーターで Dxgkrnl にこのハンドルを提供しました。

pCreateDevice

[入力/出力]グラフィックス コンテキスト デバイスを記述する DXGKARG_CREATEDEVICE 構造体へのポインター。

戻り値

DXGKDDI_CREATEDEVICE は、次のいずれかの値を返します。

リターン コード 説明
STATUS_SUCCESS DXGKDDI_CREATEDEVICE グラフィックス コンテキスト デバイスが正常に作成されました。
STATUS_NO_MEMORY DXGKDDI_CREATEDEVICE 完了するために必要なメモリを割り当てませんでした。

注釈

Dxgkrnl は、ディスプレイ ミニポート ドライバーの DXGKDDI_CREATEDEVICE 関数を呼び出して、グラフィックス サブシステムが後でディスプレイ ミニポート ドライバーの呼び出しで渡すグラフィックス コンテキスト デバイスを作成します。 ドライバーは、デバイスを使用してレンダリング状態のコレクションを保持します。 グラフィックス サブシステムは、特定のグラフィックス処理装置 (GPU) アダプター上の同じプロセスで複数のデバイスを作成できます。

注意

同時に存在できるデバイスの数は、使用可能なシステム メモリによってのみ制限されます。 つまり、ドライバーにハードコーディングされた最大デバイス制限を設定することはできません。

一般に、デバイスは互いに独立しています。つまり、あるデバイスで作成されたリソースは、別のデバイスで作成されたリソースによって参照またはアクセスすることはできません。 ただし、クロスプロセス リソースはこのルールの例外です。

DXGKDDI_CREATEDEVICE ページング可能にする必要があります。

要件

要件
サポートされている最小のクライアント Windows Vista
対象プラットフォーム デスクトップ
Header d3dkmddi.h
IRQL PASSIVE_LEVEL

こちらもご覧ください

DXGKARG_CREATEDEVICE

DXGKDDI_ADD_DEVICE