CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
DXGI_5.h
Go to the documentation of this file.
1#pragma once
2
3#include "REX/W32/DXGI_4.h"
4
5namespace REX::W32
6{
7 struct IDXGIDevice4;
8 struct IDXGIFactory5;
9 struct IDXGIOutput5;
10 struct IDXGISwapChain4;
11}
12
13namespace REX::W32
14{
19
26
31
38}
39
40namespace REX::W32
41{
43 {
44 std::uint16_t redPrimary[2];
45 std::uint16_t GreenPrimary[2];
46 std::uint16_t bluePrimary[2];
47 std::uint16_t whitePoint[2];
48 std::uint32_t maxMasteringLuminance;
49 std::uint32_t minMasteringLuminance;
50 std::uint16_t maxContentLightLevel;
52 };
53
55 {
56 std::uint8_t data[72];
57 };
58}
59
60namespace REX::W32
61{
62 struct __declspec(novtable, uuid("95B4F95F-D8DA-4CA4-9EE6-3B76D5968A10"))
63 IDXGIDevice4 : public IDXGIDevice3
64 {
65 virtual HRESULT OfferResources1(std::uint32_t a_numResources, IDXGIResource* const* a_resources, DXGI_OFFER_RESOURCE_PRIORITY a_priority, std::uint32_t a_flags) = 0;
66 virtual HRESULT ReclaimResources1(std::uint32_t a_numResources, IDXGIResource* const* a_resources, DXGI_RECLAIM_RESOURCE_RESULTS* a_results) = 0;
67 };
68
69 struct __declspec(novtable, uuid("7632E1F5-EE65-4DCA-87FD-84CD75F8838D"))
70 IDXGIFactory5 : public IDXGIFactory4
71 {
72 virtual HRESULT CheckFeatureSupport(DXGI_FEATURE a_feature, void* a_featureSupportData, std::uint32_t a_featureSupportDataSize) = 0;
73 };
74
75 struct __declspec(novtable, uuid("80A07424-AB52-42EB-833C-0C42FD282D98"))
76 IDXGIOutput5 : public IDXGIOutput4
77 {
78 virtual HRESULT DuplicateOutput1(IUnknown* a_device, std::uint32_t a_flags, std::uint32_t a_supportedFormatsCount, const DXGI_FORMAT* a_supportedFormats, IDXGIOutputDuplication** a_outputDuplication) = 0;
79 };
80
81 struct __declspec(novtable, uuid("3D585D5A-BD4A-489E-B1F4-3DBCB6452FFB"))
82 IDXGISwapChain4 : public IDXGISwapChain3
83 {
84 virtual HRESULT SetHDRMetaData(DXGI_HDR_METADATA_TYPE a_type, std::uint32_t a_size, void* a_metaData) = 0;
85 };
86}
87
88namespace REX::W32
89{
90 inline constexpr IID IID_IDXGIDevice4{ 0x95B4F95F, 0xD8DA, 0x4CA4, { 0x9E, 0xE6, 0x3B, 0x76, 0xD5, 0x96, 0x8A, 0x10 } };
91 inline constexpr IID IID_IDXGIFactory5{ 0x7632E1F5, 0xEE65, 0x4DCA, { 0x87, 0xFD, 0x84, 0xCD, 0x75, 0xF8, 0x83, 0x8D } };
92 inline constexpr IID IID_IDXGIOutput5{ 0x80A07424, 0xAB52, 0x42EB, { 0x83, 0x3C, 0x0C, 0x42, 0xFD, 0x28, 0x2D, 0x98 } };
93 inline constexpr IID IID_IDXGISwapChain4{ 0x3D585D5A, 0xBD4A, 0x489E, { 0xB1, 0xF4, 0x3D, 0xBC, 0xB6, 0x45, 0x2F, 0xFB } };
94}
Definition BSDirectInputManager.h:8
struct __declspec(novtable, uuid("00000000-0000-0000-c000-000000000046")) IUnknown
Definition COM.h:7
constexpr IID IID_IDXGIOutput5
Definition DXGI_5.h:92
DXGI_RECLAIM_RESOURCE_RESULTS
Definition DXGI_5.h:33
@ DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED
Definition DXGI_5.h:36
@ DXGI_RECLAIM_RESOURCE_RESULT_OK
Definition DXGI_5.h:34
@ DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED
Definition DXGI_5.h:35
DXGI_OFFER_RESOURCE_PRIORITY
Definition DXGI_2.h:48
DXGI_HDR_METADATA_TYPE
Definition DXGI_5.h:21
@ DXGI_HDR_METADATA_TYPE_NONE
Definition DXGI_5.h:22
@ DXGI_HDR_METADATA_TYPE_HDR10PLUS
Definition DXGI_5.h:24
@ DXGI_HDR_METADATA_TYPE_HDR10
Definition DXGI_5.h:23
DXGI_OFFER_RESOURCE_FLAGS
Definition DXGI_5.h:28
@ DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT
Definition DXGI_5.h:29
constexpr IID IID_IDXGISwapChain4
Definition DXGI_5.h:93
DXGI_FORMAT
Definition DXGI.h:63
DXGI_FEATURE
Definition DXGI_5.h:16
@ DXGI_FEATURE_PRESENT_ALLOW_TEARING
Definition DXGI_5.h:17
constexpr IID IID_IDXGIFactory5
Definition DXGI_5.h:91
std::int32_t HRESULT
Definition BASE.h:28
constexpr IID IID_IDXGIDevice4
Definition DXGI_5.h:90
std::uint8_t data[72]
Definition DXGI_5.h:56
Definition DXGI_5.h:43
std::uint16_t redPrimary[2]
Definition DXGI_5.h:44
std::uint16_t whitePoint[2]
Definition DXGI_5.h:47
std::uint16_t GreenPrimary[2]
Definition DXGI_5.h:45
std::uint16_t maxContentLightLevel
Definition DXGI_5.h:50
std::uint16_t bluePrimary[2]
Definition DXGI_5.h:46
std::uint32_t minMasteringLuminance
Definition DXGI_5.h:49
std::uint16_t maxFrameAverageLightLevel
Definition DXGI_5.h:51
std::uint32_t maxMasteringLuminance
Definition DXGI_5.h:48
Definition BASE.h:63