| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/shared/ |
Upload File : |
// Copyright (c) Microsoft Corporation. All Rights Reserved
import "dxgi1_4.idl";
cpp_quote("#include <winapifamily.h>")
#pragma region App Family
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES)")
typedef enum DXGI_OUTDUPL_FLAG {
DXGI_OUTDUPL_COMPOSITED_UI_CAPTURE_ONLY = 1,
} DXGI_OUTDUPL_FLAG;
//--------------------------------------------------------------------------------------------------------
// IDXGIOutput5 interface
//--------------------------------------------------------------------------------------------------------
[
object,
uuid(80A07424-AB52-42EB-833C-0C42FD282D98),
local,
pointer_default(unique)
]
interface IDXGIOutput5 :
IDXGIOutput4
{
HRESULT DuplicateOutput1([in, annotation("_In_")] IUnknown *pDevice,
[in ] UINT Flags,
[in, annotation("_In_")] UINT SupportedFormatsCount,
[in, annotation("_In_reads_(SupportedFormatsCount)")] const DXGI_FORMAT* pSupportedFormats,
[out, annotation("_COM_Outptr_")] IDXGIOutputDuplication **ppOutputDuplication);
};
//+-----------------------------------------------------------------------------
//
// HDR MetaData types
//
//------------------------------------------------------------------------------
typedef enum DXGI_HDR_METADATA_TYPE
{
DXGI_HDR_METADATA_TYPE_NONE = 0,
DXGI_HDR_METADATA_TYPE_HDR10 = 1,
DXGI_HDR_METADATA_TYPE_HDR10PLUS = 2,
} DXGI_HDR_METADATA_TYPE;
typedef struct DXGI_HDR_METADATA_HDR10
{
// Color gamut
UINT16 RedPrimary[2];
UINT16 GreenPrimary[2];
UINT16 BluePrimary[2];
UINT16 WhitePoint[2];
// Luminance
UINT MaxMasteringLuminance;
UINT MinMasteringLuminance;
UINT16 MaxContentLightLevel;
UINT16 MaxFrameAverageLightLevel;
} DXGI_HDR_METADATA_HDR10;
typedef struct DXGI_HDR_METADATA_HDR10PLUS
{
BYTE Data[72];
} DXGI_HDR_METADATA_HDR10PLUS;
//--------------------------------------------------------------------------------------------------------
// IDXGISwapChain4 interface
//--------------------------------------------------------------------------------------------------------
[
object,
uuid(3D585D5A-BD4A-489E-B1F4-3DBCB6452FFB),
local,
pointer_default(unique)
]
interface IDXGISwapChain4 :
IDXGISwapChain3
{
HRESULT SetHDRMetaData(
[in, annotation("_In_")] DXGI_HDR_METADATA_TYPE Type,
[in, annotation("_In_")] UINT Size,
[in, size_is(Size), annotation("_In_reads_opt_(Size)")] void* pMetaData
);
};
//--------------------------------------------------------------------------------------------------------
// IDXGIDevice4 interface
//--------------------------------------------------------------------------------------------------------
typedef enum _DXGI_OFFER_RESOURCE_FLAGS
{
DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT = 0x1,
} DXGI_OFFER_RESOURCE_FLAGS;
typedef enum _DXGI_RECLAIM_RESOURCE_RESULTS
{
DXGI_RECLAIM_RESOURCE_RESULT_OK = 0,
DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED = 1,
DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED = 2,
} DXGI_RECLAIM_RESOURCE_RESULTS;
[
object,
uuid(95B4F95F-D8DA-4CA4-9EE6-3B76D5968A10),
local,
pointer_default(unique)
]
interface IDXGIDevice4 :
IDXGIDevice3
{
HRESULT OfferResources1(
[in, annotation("_In_")] UINT NumResources,
[in, size_is(NumResources), annotation("_In_reads_(NumResources)")] IDXGIResource *const *ppResources,
[in, annotation("_In_")] DXGI_OFFER_RESOURCE_PRIORITY Priority,
[in, annotation("_In_")] UINT Flags);
HRESULT ReclaimResources1(
[in, annotation("_In_")] UINT NumResources,
[in, size_is(NumResources), annotation("_In_reads_(NumResources)")] IDXGIResource *const *ppResources,
[out, size_is(NumResources), annotation("_Out_writes_all_(NumResources)")] DXGI_RECLAIM_RESOURCE_RESULTS *pResults);
};
//+-----------------------------------------------------------------------------
//
// Enum for IDXGIFactory5::CheckFeatureSupport
//
//------------------------------------------------------------------------------
typedef enum DXGI_FEATURE
{
DXGI_FEATURE_PRESENT_ALLOW_TEARING = 0,
} DXGI_FEATURE;
//--------------------------------------------------------------------------------------------------------
// IDXGIFactory5 interface
//--------------------------------------------------------------------------------------------------------
[
object,
uuid(7632e1f5-ee65-4dca-87fd-84cd75f8838d),
local,
pointer_default(unique)
]
interface IDXGIFactory5 :
IDXGIFactory4
{
HRESULT CheckFeatureSupport(
DXGI_FEATURE Feature,
[annotation("_Inout_updates_bytes_(FeatureSupportDataSize)")] void* pFeatureSupportData,
UINT FeatureSupportDataSize
);
};
//--------------------------------------------------------------------------------------------------------
cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) */")
#pragma endregion
cpp_quote( "DEFINE_GUID(IID_IDXGIOutput5,0x80A07424,0xAB52,0x42EB,0x83,0x3C,0x0C,0x42,0xFD,0x28,0x2D,0x98);" )
cpp_quote( "DEFINE_GUID(IID_IDXGISwapChain4,0x3D585D5A,0xBD4A,0x489E,0xB1,0xF4,0x3D,0xBC,0xB6,0x45,0x2F,0xFB);" )
cpp_quote( "DEFINE_GUID(IID_IDXGIDevice4,0x95B4F95F,0xD8DA,0x4CA4,0x9E,0xE6,0x3B,0x76,0xD5,0x96,0x8A,0x10);" )
cpp_quote( "DEFINE_GUID(IID_IDXGIFactory5,0x7632e1f5,0xee65,0x4dca,0x87,0xfd,0x84,0xcd,0x75,0xf8,0x83,0x8d);" )