1 module aurora.directx.dxgi.dxgi1_5; 2 3 import aurora.directx.com; 4 public import aurora.directx.dxgi.dxgi1_4; 5 6 public: 7 8 /// 9 /// Constants 10 /// 11 12 /// 13 /// Functions 14 /// 15 16 /// 17 /// Enumerations 18 /// 19 20 enum DXGI_OUTDUPL_FLAG 21 { 22 COMPOSITED_UI_CAPTURE_ONLY= 1 23 } 24 25 enum DXGI_HDR_METADATA_TYPE 26 { 27 NONE = 0, 28 HDR10 = 1 29 } 30 31 enum DXGI_OFFER_RESOURCE_FLAGS 32 { 33 ALLOW_DECOMMIT= 0x1 34 } 35 36 enum DXGI_RECLAIM_RESOURCE_RESULTS 37 { 38 OK = 0, 39 DISCARDED = 1, 40 NOT_COMMITTED = 2 41 } 42 43 enum DXGI_FEATURE 44 { 45 PRESENT_ALLOW_TEARING = 0 46 } 47 48 /// 49 /// Structures 50 /// 51 52 struct DXGI_HDR_METADATA_HDR10 53 { 54 ushort[2] RedPrimary; 55 ushort[2] GreenPrimary; 56 ushort[2] BluePrimary; 57 ushort[2] WhitePoint; 58 uint MaxMasteringLuminance; 59 uint MinMasteringLuminance; 60 ushort MaxContentLightLevel; 61 ushort MaxFrameAverageLightLevel; 62 } 63 64 /// 65 /// Interfaces 66 /// 67 68 mixin(uuid!(IDXGIOutput5, "80A07424-AB52-42EB-833C-0C42FD282D98")); 69 public interface IDXGIOutput5 : IDXGISwapChain3 70 { 71 extern(Windows): 72 HRESULT DuplicateOutput1(IUnknown pDevice, uint Flags, uint SupportedFormatsCount, const DXGI_FORMAT *pSupportedFormats, IDXGIOutputDuplication *ppOutputDuplication); 73 } 74 75 mixin(uuid!(IDXGISwapChain4, "3D585D5A-BD4A-489E-B1F4-3DBCB6452FFB")); 76 public interface IDXGISwapChain4 : IDXGISwapChain3 77 { 78 extern(Windows): 79 HRESULT SetHDRMetaData(DXGI_HDR_METADATA_TYPE Type, uint Size, void *pMetaData); 80 } 81 82 mixin(uuid!(IDXGIDevice4, "95B4F95F-D8DA-4CA4-9EE6-3B76D5968A10")); 83 public interface IDXGIDevice4 : IDXGIDevice3 84 { 85 extern(Windows): 86 HRESULT OfferResources1(uint NumResources, const(IDXGIResource) *ppResources, DXGI_OFFER_RESOURCE_PRIORITY Priority, uint Flags); 87 HRESULT ReclaimResources1(uint NumResources, const(IDXGIResource) *ppResources, DXGI_RECLAIM_RESOURCE_RESULTS *pResults); 88 } 89 90 mixin(uuid!(IDXGIFactory5, "7632e1f5-ee65-4dca-87fd-84cd75f8838d")); 91 public interface IDXGIFactory5 : IDXGIFactory4 92 { 93 extern(Windows): 94 HRESULT CheckFeatureSupport(DXGI_FEATURE Feature, void *pFeatureSupportData, uint FeatureSupportDataSize); 95 }