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