Skip to content

Commit

Permalink
dxgi: Scrape some loose flag constants into enums
Browse files Browse the repository at this point in the history
  • Loading branch information
MarijnS95 committed Jan 26, 2024
1 parent b08a3c7 commit 2795eef
Show file tree
Hide file tree
Showing 3 changed files with 226 additions and 13 deletions.
160 changes: 149 additions & 11 deletions generation/WinSDK/enums.json
Original file line number Diff line number Diff line change
Expand Up @@ -32128,7 +32128,7 @@
{
"name": "UIA_EVENT_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_ToolTipOpenedEventId",
"value": 20000
Expand Down Expand Up @@ -32337,7 +32337,7 @@
{
"name": "UIA_PROPERTY_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_RuntimeIdPropertyId",
"value": 30000
Expand Down Expand Up @@ -33144,7 +33144,7 @@
{
"name": "UIA_TEXTATTRIBUTE_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_AnimationStyleAttributeId",
"value": 40000
Expand Down Expand Up @@ -33353,7 +33353,7 @@
{
"name": "UIA_CONTROLTYPE_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_ButtonControlTypeId",
"value": 50000
Expand Down Expand Up @@ -33535,7 +33535,7 @@
{
"name": "UIA_ANNOTATIONTYPE",
"type": "int",
"members": [
"members": [
{
"name": "AnnotationType_Unknown",
"value": 60000
Expand Down Expand Up @@ -33658,7 +33658,7 @@
{
"name": "UIA_STYLE_ID",
"type": "int",
"members": [
"members": [
{
"name": "StyleId_Custom",
"value": 70000
Expand Down Expand Up @@ -33749,7 +33749,7 @@
{
"name": "UIA_LANDMARKTYPE_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_CustomLandmarkTypeId",
"value": 80000
Expand Down Expand Up @@ -33787,7 +33787,7 @@
{
"name": "UIA_HEADINGLEVEL_ID",
"type": "int",
"members": [
"members": [
{
"name": "HeadingLevel_None",
"value": 80050
Expand Down Expand Up @@ -33846,7 +33846,7 @@
"namespace": "Windows.Win32.UI.Accessibility",
"name": "UIA_CHANGE_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_SummaryChangeId",
"value": 90000
Expand All @@ -33856,7 +33856,7 @@
{
"name": "UIA_METADATA_ID",
"type": "int",
"members": [
"members": [
{
"name": "UIA_SayAsInterpretAsMetadataId",
"value": 100000
Expand Down Expand Up @@ -34420,7 +34420,7 @@
]
},
{
"type": "int",
"type": "int",
"namespace": "Windows.Win32.UI.WindowsAndMessaging",
"name": "SCROLLBAR_COMMAND",
"members": [
Expand Down Expand Up @@ -34711,6 +34711,144 @@
}
]
},
{
"type": "uint",
"name": "DXGI_PRESENT",
"flags": true,
"autoPopulate": {
"filter": "DXGI_PRESENT_",
"header": "dxgi.h"
},
"members": [],
"uses": [
{
"interface": "IDXGISwapChain",
"method": "Present",
"parameter": "Flags"
},
{
"interface": "IDXGISwapChain1",
"method": "Present1",
"parameter": "PresentFlags"
},
{
"interface": "IDXGIDecodeSwapChain",
"method": "PresentBuffer",
"parameter": "Flags"
}
]
},
{
"type": "uint",
"name": "DXGI_ENUM_MODES",
"flags": true,
"autoPopulate": {
"filter": "DXGI_ENUM_MODES_",
"header": "dxgi.h;dxgi1_2.h"
},
"members": [],
"uses": [
{
"interface": "IDXGIOutput",
"method": "GetDisplayModeList",
"parameter": "Flags"
},
{
"interface": "IDXGIOutput1",
"method": "GetDisplayModeList1",
"parameter": "Flags"
}
]
},
{
"type": "uint",
"name": "DXGI_MWA",
"flags": true,
"autoPopulate": {
"filter": "DXGI_MWA_",
"header": "dxgi.h"
},
"members": [],
"uses": [
{
"interface": "IDXGIFactory",
"method": "MakeWindowAssociation",
"parameter": "Flags"
}
]
},
{
"type": "uint",
"name": "DXGI_MAP",
"flags": true,
"autoPopulate": {
"filter": "DXGI_MAP_",
"header": "dxgi.h"
},
"members": [],
"uses": [
{
"interface": "IDXGISurface",
"method": "Map",
"parameter": "MapFlags"
}
]
},
{
"type": "uint",
"name": "DXGI_RESOURCE_PRIORITY",
"flags": true,
"autoPopulate": {
"filter": "DXGI_RESOURCE_PRIORITY_",
"header": "dxgi.h"
},
"members": [],
"uses": [
{
"interface": "IDXGIResource",
"method": "SetEvictionPriority",
"parameter": "EvictionPriority"
},
{
"interface": "IDXGIResource",
"method": "GetEvictionPriority",
"parameter": "pEvictionPriority"
}
]
},
{
"namespace": "Windows.Win32.Graphics.Dxgi",
"type": "uint",
"name": "DXGI_SHARED_RESOURCE_RW",
"flags": true,
"autoPopulate": {
"filter": "DXGI_SHARED_RESOURCE_",
"header": "dxgi1_2.h"
},
"members": [],
"uses": []
},
{
"type": "uint",
"name": "DXGI_CREATE_FACTORY",
"flags": true,
"autoPopulate": {
"filter": "DXGI_CREATE_FACTORY_",
"header": "dxgi1_3.h"
},
"members": [],
"uses": [
{
"method": "CreateDXGIFactory2",
"parameter": "Flags"
},
{
"interface": "IDXGIFactory3",
"method": "GetCreationFlags",
"parameter": "return"
}
]
},
{
"namespace": "Windows.Win32.Data.HtmlHelp",
"name": "HTML_HELP_COMMAND",
Expand Down
75 changes: 75 additions & 0 deletions scripts/ChangesSinceLastRelease.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,78 @@ Windows.Win32.Graphics.Dxgi.DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG : [Documentati
Windows.Win32.Graphics.Dxgi.DXGI_OVERLAY_SUPPORT_FLAG : [Documentation(https://learn.microsoft.com/windows/win32/api/dxgi1_3/ne-dxgi1_3-dxgi_overlay_support_flag)] => [Documentation(https://learn.microsoft.com/windows/win32/api/dxgi1_3/ne-dxgi1_3-dxgi_overlay_support_flag),Flags]
Windows.Win32.Graphics.Dxgi.DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG : [Documentation(https://learn.microsoft.com/windows/win32/api/dxgi1_4/ne-dxgi1_4-dxgi_swap_chain_color_space_support_flag)] => [Documentation(https://learn.microsoft.com/windows/win32/api/dxgi1_4/ne-dxgi1_4-dxgi_swap_chain_color_space_support_flag),Flags]
Windows.Win32.Graphics.Dxgi.DXGI_SWAP_CHAIN_FLAG : [Documentation(https://learn.microsoft.com/windows/win32/api/dxgi/ne-dxgi-dxgi_swap_chain_flag)] => [Documentation(https://learn.microsoft.com/windows/win32/api/dxgi/ne-dxgi-dxgi_swap_chain_flag),Flags]
# dxgi: Scrape some loose flag constants into enums
Windows.Win32.Graphics.Dxgi.Apis.CreateDXGIFactory2 : Flags...UInt32 => DXGI_CREATE_FACTORY
Windows.Win32.Graphics.Dxgi.Apis.DXGI_CREATE_FACTORY_DEBUG removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_ENUM_MODES_DISABLED_STEREO removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_ENUM_MODES_INTERLACED removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_ENUM_MODES_SCALING removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_ENUM_MODES_STEREO removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MAP_DISCARD removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MAP_READ removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MAP_WRITE removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MWA_NO_ALT_ENTER removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MWA_NO_PRINT_SCREEN removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MWA_NO_WINDOW_CHANGES removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_MWA_VALID removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_ALLOW_TEARING removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_DO_NOT_SEQUENCE removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_DO_NOT_WAIT removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_RESTART removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_RESTRICT_TO_OUTPUT removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_STEREO_PREFER_RIGHT removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_STEREO_TEMPORARY_MONO removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_TEST removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_PRESENT_USE_DURATION removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_RESOURCE_PRIORITY_HIGH removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_RESOURCE_PRIORITY_LOW removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_RESOURCE_PRIORITY_MAXIMUM removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_RESOURCE_PRIORITY_MINIMUM removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_RESOURCE_PRIORITY_NORMAL removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_SHARED_RESOURCE_READ removed
Windows.Win32.Graphics.Dxgi.Apis.DXGI_SHARED_RESOURCE_WRITE removed
Windows.Win32.Graphics.Dxgi.DXGI_CREATE_FACTORY added
Windows.Win32.Graphics.Dxgi.DXGI_CREATE_FACTORY.DXGI_CREATE_FACTORY_DEBUG added
Windows.Win32.Graphics.Dxgi.DXGI_ENUM_MODES added
Windows.Win32.Graphics.Dxgi.DXGI_ENUM_MODES.DXGI_ENUM_MODES_DISABLED_STEREO added
Windows.Win32.Graphics.Dxgi.DXGI_ENUM_MODES.DXGI_ENUM_MODES_INTERLACED added
Windows.Win32.Graphics.Dxgi.DXGI_ENUM_MODES.DXGI_ENUM_MODES_SCALING added
Windows.Win32.Graphics.Dxgi.DXGI_ENUM_MODES.DXGI_ENUM_MODES_STEREO added
Windows.Win32.Graphics.Dxgi.DXGI_MAP added
Windows.Win32.Graphics.Dxgi.DXGI_MAP.DXGI_MAP_DISCARD added
Windows.Win32.Graphics.Dxgi.DXGI_MAP.DXGI_MAP_READ added
Windows.Win32.Graphics.Dxgi.DXGI_MAP.DXGI_MAP_WRITE added
Windows.Win32.Graphics.Dxgi.DXGI_MWA added
Windows.Win32.Graphics.Dxgi.DXGI_MWA.DXGI_MWA_NO_ALT_ENTER added
Windows.Win32.Graphics.Dxgi.DXGI_MWA.DXGI_MWA_NO_PRINT_SCREEN added
Windows.Win32.Graphics.Dxgi.DXGI_MWA.DXGI_MWA_NO_WINDOW_CHANGES added
Windows.Win32.Graphics.Dxgi.DXGI_MWA.DXGI_MWA_VALID added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_ALLOW_TEARING added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_DO_NOT_SEQUENCE added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_DO_NOT_WAIT added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_RESTART added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_RESTRICT_TO_OUTPUT added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_STEREO_PREFER_RIGHT added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_STEREO_TEMPORARY_MONO added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_TEST added
Windows.Win32.Graphics.Dxgi.DXGI_PRESENT.DXGI_PRESENT_USE_DURATION added
Windows.Win32.Graphics.Dxgi.DXGI_RESOURCE_PRIORITY added
Windows.Win32.Graphics.Dxgi.DXGI_RESOURCE_PRIORITY.DXGI_RESOURCE_PRIORITY_HIGH added
Windows.Win32.Graphics.Dxgi.DXGI_RESOURCE_PRIORITY.DXGI_RESOURCE_PRIORITY_LOW added
Windows.Win32.Graphics.Dxgi.DXGI_RESOURCE_PRIORITY.DXGI_RESOURCE_PRIORITY_MAXIMUM added
Windows.Win32.Graphics.Dxgi.DXGI_RESOURCE_PRIORITY.DXGI_RESOURCE_PRIORITY_MINIMUM added
Windows.Win32.Graphics.Dxgi.DXGI_RESOURCE_PRIORITY.DXGI_RESOURCE_PRIORITY_NORMAL added
Windows.Win32.Graphics.Dxgi.DXGI_SHARED_RESOURCE_RW added
Windows.Win32.Graphics.Dxgi.DXGI_SHARED_RESOURCE_RW.DXGI_SHARED_RESOURCE_READ added
Windows.Win32.Graphics.Dxgi.DXGI_SHARED_RESOURCE_RW.DXGI_SHARED_RESOURCE_WRITE added
Windows.Win32.Graphics.Dxgi.IDXGIDecodeSwapChain.PresentBuffer : Flags...UInt32 => DXGI_PRESENT
Windows.Win32.Graphics.Dxgi.IDXGIFactory.MakeWindowAssociation : Flags...UInt32 => DXGI_MWA
Windows.Win32.Graphics.Dxgi.IDXGIFactory3.GetCreationFlags : return...UInt32 => DXGI_CREATE_FACTORY
Windows.Win32.Graphics.Dxgi.IDXGIOutput.GetDisplayModeList : Flags...UInt32 => DXGI_ENUM_MODES
Windows.Win32.Graphics.Dxgi.IDXGIOutput1.GetDisplayModeList1 : Flags...UInt32 => DXGI_ENUM_MODES
Windows.Win32.Graphics.Dxgi.IDXGIResource.GetEvictionPriority : pEvictionPriority...UInt32* => DXGI_RESOURCE_PRIORITY*
Windows.Win32.Graphics.Dxgi.IDXGIResource.SetEvictionPriority : EvictionPriority...UInt32 => DXGI_RESOURCE_PRIORITY
Windows.Win32.Graphics.Dxgi.IDXGISurface.Map : MapFlags...UInt32 => DXGI_MAP
Windows.Win32.Graphics.Dxgi.IDXGISwapChain.Present : Flags...UInt32 => DXGI_PRESENT
Windows.Win32.Graphics.Dxgi.IDXGISwapChain1.Present1 : PresentFlags...UInt32 => DXGI_PRESENT
4 changes: 2 additions & 2 deletions sources/MetadataUtils/ConstantsScraper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -360,7 +360,7 @@ private void AddConstantValue(string originalNamespace, string type, string name

this.writtenConstants.Add(name, type);
}

private void AddConstantGuid(string defineGuidKeyword, string originalNamespace, string line)
{
int firstComma = line.IndexOf(',');
Expand Down Expand Up @@ -518,7 +518,7 @@ private void ScrapeConstantsFromTraversedFiles(Dictionary<string, string> traver
.Where(
e => e.autoPopulate != null &&
!string.IsNullOrEmpty(e.autoPopulate.filter) &&
e.autoPopulate.header.ToLowerInvariant() == currentHeaderName)
e.autoPopulate.header.ToLowerInvariant().Split(';').Contains(currentHeaderName))
.ToArray();
Regex autoPopulateReg = null;

Expand Down

0 comments on commit 2795eef

Please sign in to comment.