다음을 통해 공유


D3DDDICB_PRESENT 구조체(d3dumddi.h)

D3DDDICB_PRESENT 구조는 콘텐츠가 복사되는 할당을 설명합니다.

구문

typedef struct _D3DDDICB_PRESENT {
  [in] D3DKMT_HANDLE            hSrcAllocation;
  [in] D3DKMT_HANDLE            hDstAllocation;
  [in] HANDLE                   hContext;
  [in] UINT                     BroadcastContextCount;
       HANDLE                   BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
       D3DKMT_HANDLE            *BroadcastSrcAllocation;
       D3DKMT_HANDLE            *BroadcastDstAllocation;
       UINT                     PrivateDriverDataSize;
       PVOID                    pPrivateDriverData;
       BOOLEAN                  bOptimizeForComposition;
       BOOL                     SyncIntervalOverrideValid;
       D3DDDI_FLIPINTERVAL_TYPE SyncIntervalOverride;
} D3DDDICB_PRESENT;

멤버

[in] hSrcAllocation

원본 할당에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식입니다. Microsoft Direct3D 런타임의 pfnAllocateCb 함수는 이 핸들을 반환합니다. 따라서 사용자 모드 표시 드라이버는 이 핸들을 사용하여 콘텐츠를 복사해야 합니다.

[in] hDstAllocation

대상 할당에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식입니다. 대상을 알 수 없는 경우 hDstAllocation은 0일 수 있습니다. 커널 모드는 하드웨어 명령 스트림의 DMA 바로 앞에 있는 대상을 그래픽 프로세서로 결정합니다.

[in] hContext

드라이버가 복사 작업을 제출하는 컨텍스트에 대한 핸들입니다. 사용자 모드 표시 드라이버는 이전에 pfnCreateContextCb 함수를 호출하여 이 컨텍스트를 만들었습니다.

[in] BroadcastContextCount

BroadcastContext 멤버가 지정하는 배열의 추가 컨텍스트 수입니다.

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

현재 작업을 브로드캐스트할 추가 컨텍스트에 대한 핸들의 배열입니다. 64로 정의된 D3DDDI_MAX_BROADCAST_CONTEXT 상수는 사용자 모드 표시 드라이버가 현재 작업을 브로드캐스트할 수 있는 최대 추가 컨텍스트 수를 정의합니다.

브로드캐스팅은 대칭 이동 작업에 대해서만 지원됩니다. 대칭 이동 작업을 브로드캐스트하려면 디스플레이 미니포트 드라이버가 메모리 매핑된 I/O(MMIO) 기반 대칭 이동을 지원해야 합니다. MMIO 대칭 이동 지원을 나타내기 위해 디스플레이 미니포트 드라이버는 DxgkDdiQueryAdapterInfo 함수가 호출되면 DXGK_DRIVERCAPS 구조체의 FlipCaps 멤버에서 FlipOnVSyncMmIo 비트 필드 플래그를 설정합니다.

hContext 멤버가 지정하고 사용자 모드 표시 드라이버가 표시하는 원래 컨텍스트는 BroadcastContext 배열의 요소가 아닙니다. 예를 들어 BroadcastContext 배열에 하나의 요소가 포함된 경우 사용자 모드 표시 드라이버는 현재 작업을 소유 컨텍스트(hContext)로 보내고 해당 하나의 추가 컨텍스트로 브로드캐스트합니다.

BroadcastSrcAllocation

표시할 콘텐츠를 할당합니다.

BroadcastDstAllocation

0이 아닌 경우 는 현재 의 대상 할당을 나타냅니다.

PrivateDriverDataSize

프라이빗 드라이버 데이터 크기(바이트)입니다.

pPrivateDriverData

DdiPresent에 전달할 프라이빗 드라이버 데이터입니다.

bOptimizeForComposition

DWM은 컴퍼지션에 포함됩니다.

SyncIntervalOverrideValid

앱 동기화 간격 재정의가 유효합니다.

SyncIntervalOverride

앱 동기화 간격을 재정의합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
머리글 d3dumddi.h(D3dumddi.h 포함)

추가 정보

pfnAllocateCb

pfnPresentCb