DXGKDDI_CREATEDOORBELL コールバック関数 (d3dkmddi.h)
重要
一部の情報はプレリリース製品に関連しており、商用リリース前に大幅に変更される可能性があります。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
OS は KMD の DxgkDdiCreateDoorbell コールバック関数を呼び出して、ハードウェア キューのドアベルを作成します。
構文
DXGKDDI_CREATEDOORBELL DxgkddiCreatedoorbell;
NTSTATUS DxgkddiCreatedoorbell(
INOUT_PDXGKARG_CREATEDOORBELL pArgs
)
{...}
パラメーター
pArgs
[入力/出力]ドアベルを記述する DXGKARG_CREATEDOORBELL 構造体へのポインター。
戻り値
DxgkDdiCreateDoorbell は、KMD が指定されたハードウェア キューのドアベル オブジェクトを正常に作成できた場合にSTATUS_SUCCESSを返し、UMD はこのドアベルを使用して作業を送信できます。 それ以外の場合は、適切な NTSTATUS エラー コードが返されます。 KMD からエラー コードが返された場合、UMD は作業の提出にドアベルを使用できません。
注釈
UMD が D3DKMTCreateDoorbell を呼び出してハードウェア キューのドアベルを作成すると、OS は KMD に対応する DxgkDdiCreateDoorbell 呼び出しを行い、KMD がドアベル構造を初期化できるようにします。
KMD の DxgkDdiCreateDoorbell 関数は、そのドアベル データ構造のみを作成して初期化する必要があります。 DxgkDdiConnectDoorbell の後続の呼び出し中に行われるように、このドアベル オブジェクトに物理的なドアベルの場所を割り当ててはいけません。 この遅延割り当てにより、ハードウェア キューとドアベルの作成時に物理的なドアベルが使い切られないことが保証されます。これは、UMD がコマンドを送信しないか、後でコマンドの送信を開始しない場合にのみ無駄になります。 このようにして、物理的なドアベルは、実際に必要な場合にのみ使用されます。
詳細については、「 ユーザー モードの作業の送信」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 11バージョン 24H2 (WDDM 3.2) |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |