DXGK_SUBMITCOMMANDFLAGS構造体 (d3dkmddi.h)

DXGK_SUBMITCOMMANDFLAGS構造体は、グラフィックス処理装置 (GPU) に送信するダイレクト メモリ アクセス (DMA) バッファーに関する情報をビット フィールド フラグで識別します。

構文

typedef struct _DXGK_SUBMITCOMMANDFLAGS {
  union {
    struct {
      UINT Paging : 1;
      UINT Present : 1;
      UINT RedirectedPresent : 1;
      UINT NullRendering : 1;
      UINT Flip : 1;
      UINT FlipWithNoWait : 1;
      UINT ContextSwitch : 1;
      UINT Resubmission : 1;
      UINT VirtualMachineData : 1;
#if ...
      UINT Reserved : 23;
#elif
      UINT Reserved : 24;
#elif
      UINT Reserved : 25;
#else
      UINT Reserved : 26;
#endif
    };
    UINT Value;
  };
} DXGK_SUBMITCOMMANDFLAGS;

メンバー

Paging

[入力]DMA バッファーがページング操作を含むページング バッファーであるかどうかを示す UINT 値。

この設定は、32 ビット Value メンバー (0x00000001) の最初のビットを設定することと同じです。

Present

[入力]DMA バッファーに現在の操作が含まれているかどうかを示す UINT 値。 DMA バッファーは、ドライバーの DxgkDdiPresent関数によって生成されました。

この設定は、32 ビット Value メンバー (0x00000002) の 2 番目のビットを設定することと同じです。

RedirectedPresent

[入力]DMA バッファーにリダイレクトされた現在の操作が含まれているかどうかを示す UINT 値。これは、Display Windows Manager に属する共有割り当てへの存在です。 DMA バッファーは、ドライバーの DxgkDdiRender 関数によって生成されました。

この設定は、32 ビット Value メンバー (0x00000004) の 3 番目のビットを設定することと同じです。

NullRendering

[入力]ドライバーが DMA バッファーのリングへの挿入をシミュレートする必要があるかどうかを指定する UINT 値 (つまり、ドライバーが DMA バッファーの末尾でフェンス割り込みを生成する必要があるかどうか)。ただし、ドライバーは DMA バッファーを実際に実行 (レンダリング) しないでください。 NullRendering ビット フィールド フラグは、パフォーマンスの調査とデバッグ中にのみ設定され、DMA バッファーの送信とシグナリングのオーバーヘッドを引き続き実行する必要がある無限に高速なレンダリング エンジンをシミュレートします。 NullRendering は、一般的な操作中に設定されることはありません。

この設定は、32 ビット Value メンバー (0x00000008) の 4 番目のビットを設定することと同じです。

Flip

[入力]DMA バッファーに反転操作が含まれているかどうかを示す UINT 値。

この設定は、32 ビット Value メンバー (0x00000010) の 5 番目のビットを設定することと同じです。

FlipWithNoWait

[入力]DMA バッファーに、次の垂直同期を待機する組み込みなしで発生する反転操作が含まれているかどうかを示す UINT 値。

この設定は、32 ビット Value メンバー (0x00000020) の 6 番目のビットを設定することと同じです。

ContextSwitch

[入力]Windows 8 以降でサポートされます。

GPU が現在実行中のコンテキストから null コンテキストに切り替える必要があることを指定する UINT 値。

Windows 8以降、オペレーティング システムは、GPU で現在実行されているコンテキストに属するリソースを移動または削除しようとするたびに、明示的に GPU に null コンテキストへの切り替えを要求します。 コンテキスト 切り替え要求は、 ContextSwitch メンバー セットを使用して長さ 0 の DMA バッファーを送信することによって実行されます。

現在のコンテキストがページング バッファーを使用する操作を実行していた場合、context switch コマンドは Paging メンバーも 1 に設定して送信されます。

この設定は、32 ビット Value メンバー (0x00000040) の 7 番目のビットを設定することと同じです。

Resubmission

[入力]以前のプリエンプションが原因で、この DMA パケットが GPU に再送信されているかどうかを示します。 WDDM 2.0 では、 DXGKARG_SUBMITCOMMANDDxgkDdiSubmitCommandVirtual の両方で、最初の DMA パケット送信でこのフラグが 0 に設定され、以前のプリエンプションのためにパケットが再送信されるときに 1 に設定されます。 このフラグは、パケットが以前に割り込まれたかどうかに関係なく、WDDM 1.x では 0 に設定されます。

Windows 10 以降でサポートされています。

VirtualMachineData

[入力]送信が準仮想化アダプターからの送信であることを示します。

Reserved

[入力]このメンバーは予約済みであり、0 に設定する必要があります。

Value

[入力]DMA バッファーに関する情報を識別する 1 つの 32 ビット値を保持できる、 DXGK_SUBMITCOMMANDFLAGS 含まれる共用体内のメンバー。

要件

要件
サポートされている最小のクライアント Windows Vista
Header d3dkmddi.h (D3dkmddi.h を含む)

こちらもご覧ください

DXGKARG_SUBMITCOMMAND

DxgkDdiSubmitCommand