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