コンテンツがコピーされるマルチプレーン オーバーレイの割り当てについて説明します。
構文
typedef struct DXGIDDICB_PRESENT_MULTIPLANE_OVERLAY {
[in] void *pDXGIContext;
[in] HANDLE hContext;
[in] UINT BroadcastContextCount;
HANDLE BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
[in] DWORD AllocationInfoCount;
DXGIDDI_MULTIPLANE_OVERLAY_ALLOCATION_INFO AllocationInfo[DXGI_DDI_MAX_MULTIPLANE_OVERLAY_ALLOCATIONS];
} DXGIDDICB_PRESENT_MULTIPLANE_OVERLAY;
メンバーズ
[in] pDXGIContext
Microsoft DirectX グラフィックス インフラストラクチャ (DXGI) コンテキストへのハンドル。 このハンドルはドライバーに対して不透明です。 ドライバーは、pfnPresentMultiplaneOverlay (DXGI) 関数への呼び出しでドライバーが受信した DXGI_DDI_ARG_PRESENTMULTIPLANEOVERLAY 構造体の pDXGIContext メンバーからこのメンバーにハンドルを割り当てる必要があります。
[in] hContext
ドライバーがコピー操作を送信するコンテキストへのハンドル。 ユーザー モードのディスプレイ ドライバーは、pfnCreateContextCb 関数を呼び出すことによって、このコンテキストを以前に作成しました。
[in] BroadcastContextCount
BroadcastContext メンバーが指定する配列内の追加コンテキストの数。
[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]
現在の操作をブロードキャストする追加のコンテキストへのハンドルの配列。 D3DDDI_MAX_BROADCAST_CONTEXT 定数 (64) は、現在の現在の操作をユーザー モード ディスプレイ ドライバーがブロードキャストできる追加コンテキストの最大数を定義します。
ブロードキャストはフリップ操作でのみサポートされます。 フリップ操作をブロードキャストするには、ディスプレイ ミニポート ドライバーは、メモリ マップ I/O (MMIO) ベースのフリップをサポートする必要があります。 MMIO フリップのサポートを示すために、ディスプレイ ミニポート ドライバーは、DxgkDdiQueryAdapterInfo 関数が呼び出されたときに、DXGK_DRIVERCAPS 構造体の FlipCaps メンバーに FlipOnVSyncMmIo ビット フィールド フラグを設定します。
hContext メンバーが指定し、ユーザー モードディスプレイ ドライバーが提示する元のコンテキストは、BroadcastContext 配列内の要素ではありません。 たとえば、BroadcastContext 配列に 1 つの要素が含まれている場合、ユーザー モードディスプレイ ドライバーは現在の操作を所有コンテキスト (hContext) に送信し、その 1 つの追加コンテキストにブロードキャストします。
[in] AllocationInfoCount
AllocationInfo メンバーが指定する配列内の割り当ての数。 最大数は 16 で、DXGI_DDI_MAX_MULTIPLANE_OVERLAY_ALLOCATIONS 定数の値です。
AllocationInfo[DXGI_DDI_MAX_MULTIPLANE_OVERLAY_ALLOCATIONS]
マルチプレーン オーバーレイの割り当てに関する情報を指定する DXGIDDI_MULTIPLANE_OVERLAY_ALLOCATION_INFO 型の構造体の配列。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8.1 |
サポートされる最小サーバー | Windows Server 2012 R2 |
ヘッダー | dxgiddi.h (D3d10umddi.h を含む) |
関連項目
DXGIDDI_MULTIPLANE_OVERLAY_ALLOCATION_INFO
DXGI_DDI_ARG_PRESENTMULTIPLANEOVERLAY
pfnCreateContextCb の