D3DKMT_PRESENT 구조체(d3dkmthk.h)
D3DKMT_PRESENT 구조체는 현재 작업을 설명합니다.
구문
typedef struct _D3DKMT_PRESENT {
union {
[in] D3DKMT_HANDLE hDevice;
[in] D3DKMT_HANDLE hContext;
};
void D3DKMT_PTR(
HWND unnamedParam1,
hWindow unnamedParam2
);
[in] D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId;
[in] D3DKMT_HANDLE hSource;
[in] D3DKMT_HANDLE hDestination;
[in] UINT Color;
[in] RECT DstRect;
[in] RECT SrcRect;
[in] UINT SubRectCnt;
void D3DKMT_PTR(
const RECT *unnamedParam1,
pSrcSubRects unnamedParam2
);
[in] UINT PresentCount;
[in] D3DDDI_FLIPINTERVAL_TYPE FlipInterval;
[in] D3DKMT_PRESENTFLAGS Flags;
[in] ULONG BroadcastContextCount;
D3DKMT_HANDLE BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
[in] HANDLE PresentLimitSemaphore;
[in] D3DKMT_PRESENTHISTORYTOKEN PresentHistoryToken;
D3DKMT_PRESENT_RGNS *pPresentRegions;
union {
D3DKMT_HANDLE hAdapter;
D3DKMT_HANDLE hIndirectContext;
};
UINT Duration;
void D3DKMT_PTR(
D3DKMT_HANDLE *unnamedParam1,
BroadcastSrcAllocation unnamedParam2
);
void D3DKMT_PTR(
D3DKMT_HANDLE *unnamedParam1,
BroadcastDstAllocation unnamedParam2
);
UINT PrivateDriverDataSize;
void D3DKMT_PTR(
PVOID unnamedParam1,
pPrivateDriverData unnamedParam2
);
BOOLEAN bOptimizeForComposition;
} D3DKMT_PRESENT;
멤버
[in] hDevice
표시할 디바이스에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식입니다. 디바이스 핸들은 Microsoft Direct3D 버전 10과의 호환성을 위해 D3DKMT_PRESENT 포함된 공용 구조체의 D3DKMTPresent 함수에 제공됩니다.
[in] hContext
표시할 디바이스 컨텍스트에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식입니다.
void D3DKMT_PTR( HWND unnamedParam1, hWindow unnamedParam2)
[in] VidPnSourceId
RestrictVidPnSource 비트 필드 플래그가 Flags 멤버에 설정된 경우 표시를 제한할 VidPN(비디오 제공 네트워크) 토폴로지 경로에 있는 비디오 원본의 식별 번호(0부터 시작)입니다.
RestrictVidPnSource 비트 필드 플래그가 설정되고 hWindow 멤버가 NULL인 경우 VidPnSourceId 멤버는 전체 화면 비트blt가 RestrictVidPnSource가 설정되고 hWindow가 NULL이 아닌 경우 로 이동되는 출력을 나타내며, VidPnSourceId는 창이 있는 비트 블록 전송을 제한할 출력을 나타냅니다.
[in] hSource
ColorFill 비트 필드 플래그가 Flags 멤버에 설정되지 않은 경우 시스템 메모리 또는 제공될 기본 할당에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식입니다.
[in] hDestination
대상 할당에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식입니다. 대상을 알 수 없는 경우 hDestination은 0일 수 있습니다.
hDestination의 핸들은 Blt 비트 필드 플래그가 Flags 멤버에 설정된 경우에만 유효합니다.
hDestination 멤버의 핸들이 0이 아닌 경우 hDestination 및 hWindow 핸들은 동일한 크기의 두 가지 기본 할당을 참조해야 하며, hDevice 멤버의 디바이스는 VidPnSourceId 멤버로 식별된 비디오 원본을 소유해야 하며 SrcRectValid 비트 필드 플래그는 Flags 멤버에서 설정해야 합니다.
[in] Color
ARGB 32비트( D3DDDIFORMAT 열거형 참조) 색 채우기 또는 색 키 값입니다. ColorFill 비트 필드 플래그가 Flags 멤버에 설정되면 색 채우기 값이 설정됩니다. 색 키 값은 Flags 멤버에서 SrcColorKey 또는 DstColorKey 비트 필드 플래그를 설정할 때 설정됩니다. ColorFill, SrcColorKey 및 DstColorKey 비트 필드 플래그 중 하나만 언제든지 설정됩니다.
기본 형식이 palettized RGB인 경우 Color 에는 D3DDDIFORMAT D3DDDIFMT_A8R8G8B8 값이 아닌 색상표 인덱스가 포함됩니다.
[in] DstRect
비트blt에 대한 선택적 대상 RECT 입니다. 대상 RECT는 DstRectValid 비트 필드 플래그가 Flags 멤버에 설정된 경우에만 사용됩니다.
[in] SrcRect
비트blt에 대한 선택적 원본 RECT입니다. 원본 RECT는 SrcRectValid 비트 필드 플래그가 Flags 멤버에 설정된 경우에만 사용됩니다.
[in] SubRectCnt
pSrcSubRects가 표시할 때 지정된 을 가리키는 하위 영역의 수입니다.
void D3DKMT_PTR( const RECT *unnamedParam1, pSrcSubRects unnamedParam2)
[in] PresentCount
hDevice로 지정된 디바이스에 대해 큐에 대기할 수 있는 현재 작업의 수입니다.
[in] FlipInterval
대칭 이동 간격(즉, 0, 1, 2, 3 또는 4 세로 동기화 후 대칭 이동이 발생하는 경우)을 나타내는 D3DDDI_FLIPINTERVAL_TYPE 형식의 값입니다.
[in] Flags
비트 필드 플래그에서 표시하는 방법을 식별하는 D3DKMT_PRESENTFLAGS 구조체입니다. ColorFill, SrcColorKey 및 DstColorKey 비트 필드 플래그는 상호 배타적입니다.
[in] BroadcastContextCount
BroadcastContext에서 지정하는 배열의 추가 컨텍스트 수입니다.
[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]
현재 작업을 브로드캐스트할 추가 컨텍스트에 대한 커널 모드 핸들을 나타내는 D3DKMT_HANDLE 데이터 형식의 배열입니다. 64로 정의된 D3DDDI_MAX_BROADCAST_CONTEXT 상수는 OpenGL ICD가 현재 작업을 브로드캐스트할 수 있는 최대 컨텍스트 수를 정의합니다.
브로드캐스트는 대칭 이동 작업에 대해서만 지원됩니다. 대칭 이동 작업을 브로드캐스트하려면 디스플레이 미니포트 드라이버가 MMIO(메모리 매핑 I/O) 기반 대칭 이동을 지원해야 합니다. MMIO 대칭 이동 지원을 나타내기 위해 디스플레이 미니포트 드라이버는 DxgkDdiQueryAdapterInfo 함수가 호출되면 DXGK_DRIVERCAPS 구조체의 FlipCaps 멤버에 FlipOnVSyncMmIo 비트 필드 플래그를 설정합니다.
hContext 멤버가 지정하고 OpenGL ICD가 제공하는 원래 컨텍스트는 BroadcastContext 배열의 요소가 아닙니다. 예를 들어 BroadcastContext 배열에 하나의 요소가 포함된 경우 OpenGL ICD는 현재 작업을 소유 컨텍스트(hContext)로 보내고 해당 하나의 추가 컨텍스트로 브로드캐스트합니다.
[in] PresentLimitSemaphore
현재 제한 세마포에 대한 핸들입니다.
Windows 7부터 지원됩니다.
[in] PresentHistoryToken
현재 작업의 형식을 식별하는 D3DKMT_PRESENTHISTORYTOKEN 구조체입니다.
Windows 7부터 지원됩니다.
pPresentRegions
더티 및 이동 영역을 식별하는 D3DKMT_PRESENT_RGNS 구조체에 대한 포인터입니다.
Windows 8 부터 지원합니다.
hAdapter
그래픽 어댑터에 대한 핸들입니다.
hIndirectContext
DoD 현재 경로를 통해 리디렉션하기 위한 간접 어댑터 컨텍스트입니다. 이 멤버는 PresentIndirect 플래그가 설정된 경우에만 유효합니다.
Duration
현재 기간당. DurationValid 플래그가 설정된 경우에만 유효합니다.
void D3DKMT_PTR( D3DKMT_HANDLE *unnamedParam1, BroadcastSrcAllocation unnamedParam2)
void D3DKMT_PTR( D3DKMT_HANDLE *unnamedParam1, BroadcastDstAllocation unnamedParam2)
PrivateDriverDataSize
프라이빗 드라이버 데이터 크기입니다.
void D3DKMT_PTR( PVOID unnamedParam1, pPrivateDriverData unnamedParam2)
bOptimizeForComposition
디바이스가 컴퍼지션에 최적화되었는지 여부를 나타냅니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista |
머리글 | d3dkmthk.h(D3dkmthk.h 포함) |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기