Skip to content

Commit f6a6f7a

Browse files
committed
Update for Vulkan-Docs 1.4.349
1 parent afe9eb9 commit f6a6f7a

17 files changed

Lines changed: 3089 additions & 252 deletions

include/vulkan/vulkan.cppm

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ export module vulkan;
2727

2828
export import std;
2929

30-
VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 348, "Wrong VK_HEADER_VERSION!" );
30+
VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 349, "Wrong VK_HEADER_VERSION!" );
3131

3232
#if defined( _MSC_VER )
3333
# pragma warning( push )
@@ -1307,6 +1307,9 @@ export
13071307
//=== VK_KHR_maintenance10 ===
13081308
using ::PFN_vkCmdEndRendering2KHR;
13091309

1310+
//=== VK_ARM_data_graph_optical_flow ===
1311+
using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM;
1312+
13101313
//=== VK_NV_compute_occupancy_priority ===
13111314
using ::PFN_vkCmdSetComputeOccupancyPriorityNV;
13121315

include/vulkan/vulkan.hpp

Lines changed: 103 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
# endif
3838
#endif
3939

40-
VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 348, "Wrong VK_HEADER_VERSION!" );
40+
VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 349, "Wrong VK_HEADER_VERSION!" );
4141

4242
VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
4343
{
@@ -1747,6 +1747,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
17471747
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceProperties2 )
17481748
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceProperties2KHR )
17491749
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM )
1750+
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM )
17501751
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM )
17511752
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM )
17521753
DECLARE_IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR )
@@ -8055,6 +8056,20 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
80558056
return ::vkCmdEndRendering2KHR( commandBuffer, pRenderingEndInfo );
80568057
}
80578058

8059+
//=== VK_ARM_data_graph_optical_flow ===
8060+
8061+
VULKAN_HPP_INLINE VkResult vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM(
8062+
VkPhysicalDevice physicalDevice,
8063+
uint32_t queueFamilyIndex,
8064+
VkQueueFamilyDataGraphPropertiesARM const * pQueueFamilyDataGraphProperties,
8065+
VkDataGraphOpticalFlowImageFormatInfoARM const * pOpticalFlowImageFormatInfo,
8066+
uint32_t * pFormatCount,
8067+
VkDataGraphOpticalFlowImageFormatPropertiesARM * pImageFormatProperties ) const VULKAN_HPP_NOEXCEPT
8068+
{
8069+
return ::vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM(
8070+
physicalDevice, queueFamilyIndex, pQueueFamilyDataGraphProperties, pOpticalFlowImageFormatInfo, pFormatCount, pImageFormatProperties );
8071+
}
8072+
80588073
//=== VK_NV_compute_occupancy_priority ===
80598074

80608075
VULKAN_HPP_INLINE void vkCmdSetComputeOccupancyPriorityNV( VkCommandBuffer commandBuffer,
@@ -10877,7 +10892,9 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
1087710892
VULKAN_HPP_CONSTEXPR_INLINE auto KHRVideoMaintenance1ExtensionName = VK_KHR_VIDEO_MAINTENANCE_1_EXTENSION_NAME;
1087810893

1087910894
//=== VK_NV_per_stage_descriptor_set ===
10880-
VULKAN_HPP_CONSTEXPR_INLINE auto NVPerStageDescriptorSetSpecVersion = VK_NV_PER_STAGE_DESCRIPTOR_SET_SPEC_VERSION;
10895+
VULKAN_HPP_DEPRECATED( "The VK_NV_per_stage_descriptor_set extension has been deprecated by VK_EXT_descriptor_heap." )
10896+
VULKAN_HPP_CONSTEXPR_INLINE auto NVPerStageDescriptorSetSpecVersion = VK_NV_PER_STAGE_DESCRIPTOR_SET_SPEC_VERSION;
10897+
VULKAN_HPP_DEPRECATED( "The VK_NV_per_stage_descriptor_set extension has been deprecated by VK_EXT_descriptor_heap." )
1088110898
VULKAN_HPP_CONSTEXPR_INLINE auto NVPerStageDescriptorSetExtensionName = VK_NV_PER_STAGE_DESCRIPTOR_SET_EXTENSION_NAME;
1088210899

1088310900
//=== VK_QCOM_image_processing2 ===
@@ -11142,6 +11159,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
1114211159
VULKAN_HPP_CONSTEXPR_INLINE auto KHRMaintenance10SpecVersion = VK_KHR_MAINTENANCE_10_SPEC_VERSION;
1114311160
VULKAN_HPP_CONSTEXPR_INLINE auto KHRMaintenance10ExtensionName = VK_KHR_MAINTENANCE_10_EXTENSION_NAME;
1114411161

11162+
//=== VK_ARM_data_graph_optical_flow ===
11163+
VULKAN_HPP_CONSTEXPR_INLINE auto ARMDataGraphOpticalFlowSpecVersion = VK_ARM_DATA_GRAPH_OPTICAL_FLOW_SPEC_VERSION;
11164+
VULKAN_HPP_CONSTEXPR_INLINE auto ARMDataGraphOpticalFlowExtensionName = VK_ARM_DATA_GRAPH_OPTICAL_FLOW_EXTENSION_NAME;
11165+
1114511166
//=== VK_EXT_shader_long_vector ===
1114611167
VULKAN_HPP_CONSTEXPR_INLINE auto EXTShaderLongVectorSpecVersion = VK_EXT_SHADER_LONG_VECTOR_SPEC_VERSION;
1114711168
VULKAN_HPP_CONSTEXPR_INLINE auto EXTShaderLongVectorExtensionName = VK_EXT_SHADER_LONG_VECTOR_EXTENSION_NAME;
@@ -21941,6 +21962,79 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
2194121962
};
2194221963
};
2194321964

21965+
//=== VK_ARM_data_graph_optical_flow ===
21966+
template <>
21967+
struct StructExtends<PhysicalDeviceDataGraphOpticalFlowFeaturesARM, PhysicalDeviceFeatures2>
21968+
{
21969+
enum
21970+
{
21971+
value = true
21972+
};
21973+
};
21974+
21975+
template <>
21976+
struct StructExtends<PhysicalDeviceDataGraphOpticalFlowFeaturesARM, DeviceCreateInfo>
21977+
{
21978+
enum
21979+
{
21980+
value = true
21981+
};
21982+
};
21983+
21984+
template <>
21985+
struct StructExtends<DataGraphPipelineOpticalFlowCreateInfoARM, DataGraphPipelineCreateInfoARM>
21986+
{
21987+
enum
21988+
{
21989+
value = true
21990+
};
21991+
};
21992+
21993+
template <>
21994+
struct StructExtends<DataGraphOpticalFlowImageFormatInfoARM, PhysicalDeviceImageFormatInfo2>
21995+
{
21996+
enum
21997+
{
21998+
value = true
21999+
};
22000+
};
22001+
22002+
template <>
22003+
struct StructExtends<DataGraphOpticalFlowImageFormatInfoARM, ImageCreateInfo>
22004+
{
22005+
enum
22006+
{
22007+
value = true
22008+
};
22009+
};
22010+
22011+
template <>
22012+
struct StructExtends<DataGraphPipelineOpticalFlowDispatchInfoARM, DataGraphPipelineDispatchInfoARM>
22013+
{
22014+
enum
22015+
{
22016+
value = true
22017+
};
22018+
};
22019+
22020+
template <>
22021+
struct StructExtends<DataGraphPipelineResourceInfoImageLayoutARM, DataGraphPipelineResourceInfoARM>
22022+
{
22023+
enum
22024+
{
22025+
value = true
22026+
};
22027+
};
22028+
22029+
template <>
22030+
struct StructExtends<DataGraphPipelineSingleNodeCreateInfoARM, DataGraphPipelineCreateInfoARM>
22031+
{
22032+
enum
22033+
{
22034+
value = true
22035+
};
22036+
};
22037+
2194422038
//=== VK_EXT_shader_long_vector ===
2194522039
template <>
2194622040
struct StructExtends<PhysicalDeviceShaderLongVectorFeaturesEXT, PhysicalDeviceFeatures2>
@@ -23565,6 +23659,9 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
2356523659
//=== VK_KHR_maintenance10 ===
2356623660
PFN_vkCmdEndRendering2KHR vkCmdEndRendering2KHR = 0;
2356723661

23662+
//=== VK_ARM_data_graph_optical_flow ===
23663+
PFN_vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM = 0;
23664+
2356823665
//=== VK_NV_compute_occupancy_priority ===
2356923666
PFN_vkCmdSetComputeOccupancyPriorityNV vkCmdSetComputeOccupancyPriorityNV = 0;
2357023667

@@ -25294,6 +25391,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
2529425391
//=== VK_KHR_maintenance10 ===
2529525392
vkCmdEndRendering2KHR = PFN_vkCmdEndRendering2KHR( vkGetInstanceProcAddr( instance, "vkCmdEndRendering2KHR" ) );
2529625393

25394+
//=== VK_ARM_data_graph_optical_flow ===
25395+
vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM = PFN_vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM(
25396+
vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM" ) );
25397+
2529725398
//=== VK_NV_compute_occupancy_priority ===
2529825399
vkCmdSetComputeOccupancyPriorityNV = PFN_vkCmdSetComputeOccupancyPriorityNV( vkGetInstanceProcAddr( instance, "vkCmdSetComputeOccupancyPriorityNV" ) );
2529925400

include/vulkan/vulkan_core.h

Lines changed: 169 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ extern "C" {
6666
//#define VK_API_VERSION VK_MAKE_API_VERSION(0, 1, 0, 0) // Patch version should always be set to 0
6767

6868
// Version of this file
69-
#define VK_HEADER_VERSION 348
69+
#define VK_HEADER_VERSION 349
7070

7171
// Complete version of this file
7272
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 4, VK_HEADER_VERSION)
@@ -1429,6 +1429,15 @@ typedef enum VkStructureType {
14291429
VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_FLAGS_INFO_KHR = 1000630002,
14301430
VK_STRUCTURE_TYPE_RENDERING_END_INFO_KHR = 1000619003,
14311431
VK_STRUCTURE_TYPE_RESOLVE_IMAGE_MODE_INFO_KHR = 1000630004,
1432+
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DATA_GRAPH_OPTICAL_FLOW_FEATURES_ARM = 1000631000,
1433+
VK_STRUCTURE_TYPE_QUEUE_FAMILY_DATA_GRAPH_OPTICAL_FLOW_PROPERTIES_ARM = 1000631001,
1434+
VK_STRUCTURE_TYPE_DATA_GRAPH_OPTICAL_FLOW_IMAGE_FORMAT_INFO_ARM = 1000631003,
1435+
VK_STRUCTURE_TYPE_DATA_GRAPH_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_ARM = 1000631004,
1436+
VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_OPTICAL_FLOW_DISPATCH_INFO_ARM = 1000631005,
1437+
VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_OPTICAL_FLOW_CREATE_INFO_ARM = 1000631002,
1438+
VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_RESOURCE_INFO_IMAGE_LAYOUT_ARM = 1000631006,
1439+
VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SINGLE_NODE_CREATE_INFO_ARM = 1000631007,
1440+
VK_STRUCTURE_TYPE_DATA_GRAPH_PIPELINE_SINGLE_NODE_CONNECTION_ARM = 1000631008,
14321441
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_LONG_VECTOR_FEATURES_EXT = 1000635000,
14331442
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_LONG_VECTOR_PROPERTIES_EXT = 1000635001,
14341443
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CACHE_INCREMENTAL_MODE_FEATURES_SEC = 1000637000,
@@ -7326,6 +7335,9 @@ static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DEPTH_COPY_ON_COMPUTE_
73267335
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DEPTH_COPY_ON_TRANSFER_QUEUE_BIT_KHR = 0x20000000000000ULL;
73277336
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STENCIL_COPY_ON_COMPUTE_QUEUE_BIT_KHR = 0x40000000000000ULL;
73287337
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_STENCIL_COPY_ON_TRANSFER_QUEUE_BIT_KHR = 0x80000000000000ULL;
7338+
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DATA_GRAPH_OPTICAL_FLOW_IMAGE_BIT_ARM = 0x100000000000000ULL;
7339+
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DATA_GRAPH_OPTICAL_FLOW_VECTOR_BIT_ARM = 0x200000000000000ULL;
7340+
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_DATA_GRAPH_OPTICAL_FLOW_COST_BIT_ARM = 0x400000000000000ULL;
73297341

73307342

73317343
typedef enum VkPipelineCreationFeedbackFlagBits {
@@ -23435,6 +23447,7 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDataGraphPipelineSessionARM)
2343523447

2343623448
typedef enum VkDataGraphPipelineSessionBindPointARM {
2343723449
VK_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_TRANSIENT_ARM = 0,
23450+
VK_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_OPTICAL_FLOW_CACHE_ARM = 1000631001,
2343823451
VK_DATA_GRAPH_PIPELINE_SESSION_BIND_POINT_MAX_ENUM_ARM = 0x7FFFFFFF
2343923452
} VkDataGraphPipelineSessionBindPointARM;
2344023453

@@ -23460,13 +23473,15 @@ typedef enum VkPhysicalDeviceDataGraphOperationTypeARM {
2346023473
VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_SPIRV_EXTENDED_INSTRUCTION_SET_ARM = 0,
2346123474
VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_NEURAL_MODEL_QCOM = 1000629000,
2346223475
VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_BUILTIN_MODEL_QCOM = 1000629001,
23476+
VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_OPTICAL_FLOW_ARM = 1000631000,
2346323477
VK_PHYSICAL_DEVICE_DATA_GRAPH_OPERATION_TYPE_MAX_ENUM_ARM = 0x7FFFFFFF
2346423478
} VkPhysicalDeviceDataGraphOperationTypeARM;
2346523479
typedef VkFlags64 VkDataGraphPipelineSessionCreateFlagsARM;
2346623480

2346723481
// Flag bits for VkDataGraphPipelineSessionCreateFlagBitsARM
2346823482
typedef VkFlags64 VkDataGraphPipelineSessionCreateFlagBitsARM;
2346923483
static const VkDataGraphPipelineSessionCreateFlagBitsARM VK_DATA_GRAPH_PIPELINE_SESSION_CREATE_PROTECTED_BIT_ARM = 0x00000001ULL;
23484+
static const VkDataGraphPipelineSessionCreateFlagBitsARM VK_DATA_GRAPH_PIPELINE_SESSION_CREATE_OPTICAL_FLOW_CACHE_BIT_ARM = 0x00000002ULL;
2347023485

2347123486
typedef VkFlags64 VkDataGraphPipelineDispatchFlagsARM;
2347223487

@@ -25378,6 +25393,159 @@ typedef struct VkPhysicalDeviceDataGraphModelFeaturesQCOM {
2537825393

2537925394

2538025395

25396+
// VK_ARM_data_graph_optical_flow is a preprocessor guard. Do not pass it to API calls.
25397+
#define VK_ARM_data_graph_optical_flow 1
25398+
#define VK_ARM_DATA_GRAPH_OPTICAL_FLOW_SPEC_VERSION 1
25399+
#define VK_ARM_DATA_GRAPH_OPTICAL_FLOW_EXTENSION_NAME "VK_ARM_data_graph_optical_flow"
25400+
25401+
typedef enum VkDataGraphOpticalFlowPerformanceLevelARM {
25402+
VK_DATA_GRAPH_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_ARM = 0,
25403+
VK_DATA_GRAPH_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_ARM = 1,
25404+
VK_DATA_GRAPH_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_ARM = 2,
25405+
VK_DATA_GRAPH_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_ARM = 3,
25406+
VK_DATA_GRAPH_OPTICAL_FLOW_PERFORMANCE_LEVEL_MAX_ENUM_ARM = 0x7FFFFFFF
25407+
} VkDataGraphOpticalFlowPerformanceLevelARM;
25408+
25409+
typedef enum VkDataGraphPipelineNodeTypeARM {
25410+
VK_DATA_GRAPH_PIPELINE_NODE_TYPE_OPTICAL_FLOW_ARM = 1000631000,
25411+
VK_DATA_GRAPH_PIPELINE_NODE_TYPE_MAX_ENUM_ARM = 0x7FFFFFFF
25412+
} VkDataGraphPipelineNodeTypeARM;
25413+
25414+
typedef enum VkDataGraphPipelineNodeConnectionTypeARM {
25415+
VK_DATA_GRAPH_PIPELINE_NODE_CONNECTION_TYPE_OPTICAL_FLOW_INPUT_ARM = 1000631000,
25416+
VK_DATA_GRAPH_PIPELINE_NODE_CONNECTION_TYPE_OPTICAL_FLOW_REFERENCE_ARM = 1000631001,
25417+
VK_DATA_GRAPH_PIPELINE_NODE_CONNECTION_TYPE_OPTICAL_FLOW_HINT_ARM = 1000631002,
25418+
VK_DATA_GRAPH_PIPELINE_NODE_CONNECTION_TYPE_OPTICAL_FLOW_FLOW_VECTOR_ARM = 1000631003,
25419+
VK_DATA_GRAPH_PIPELINE_NODE_CONNECTION_TYPE_OPTICAL_FLOW_COST_ARM = 1000631004,
25420+
VK_DATA_GRAPH_PIPELINE_NODE_CONNECTION_TYPE_MAX_ENUM_ARM = 0x7FFFFFFF
25421+
} VkDataGraphPipelineNodeConnectionTypeARM;
25422+
25423+
typedef enum VkDataGraphOpticalFlowGridSizeFlagBitsARM {
25424+
VK_DATA_GRAPH_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_ARM = 0,
25425+
VK_DATA_GRAPH_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_ARM = 0x00000001,
25426+
VK_DATA_GRAPH_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_ARM = 0x00000002,
25427+
VK_DATA_GRAPH_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_ARM = 0x00000004,
25428+
VK_DATA_GRAPH_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_ARM = 0x00000008,
25429+
VK_DATA_GRAPH_OPTICAL_FLOW_GRID_SIZE_FLAG_BITS_MAX_ENUM_ARM = 0x7FFFFFFF
25430+
} VkDataGraphOpticalFlowGridSizeFlagBitsARM;
25431+
typedef VkFlags VkDataGraphOpticalFlowGridSizeFlagsARM;
25432+
25433+
typedef enum VkDataGraphOpticalFlowCreateFlagBitsARM {
25434+
VK_DATA_GRAPH_OPTICAL_FLOW_CREATE_ENABLE_HINT_BIT_ARM = 0x00000001,
25435+
VK_DATA_GRAPH_OPTICAL_FLOW_CREATE_ENABLE_COST_BIT_ARM = 0x00000002,
25436+
VK_DATA_GRAPH_OPTICAL_FLOW_CREATE_RESERVED_30_BIT_ARM = 0x40000000,
25437+
VK_DATA_GRAPH_OPTICAL_FLOW_CREATE_FLAG_BITS_MAX_ENUM_ARM = 0x7FFFFFFF
25438+
} VkDataGraphOpticalFlowCreateFlagBitsARM;
25439+
typedef VkFlags VkDataGraphOpticalFlowCreateFlagsARM;
25440+
25441+
typedef enum VkDataGraphOpticalFlowImageUsageFlagBitsARM {
25442+
VK_DATA_GRAPH_OPTICAL_FLOW_IMAGE_USAGE_UNKNOWN_ARM = 0,
25443+
VK_DATA_GRAPH_OPTICAL_FLOW_IMAGE_USAGE_INPUT_BIT_ARM = 0x00000001,
25444+
VK_DATA_GRAPH_OPTICAL_FLOW_IMAGE_USAGE_OUTPUT_BIT_ARM = 0x00000002,
25445+
VK_DATA_GRAPH_OPTICAL_FLOW_IMAGE_USAGE_HINT_BIT_ARM = 0x00000004,
25446+
VK_DATA_GRAPH_OPTICAL_FLOW_IMAGE_USAGE_COST_BIT_ARM = 0x00000008,
25447+
VK_DATA_GRAPH_OPTICAL_FLOW_IMAGE_USAGE_FLAG_BITS_MAX_ENUM_ARM = 0x7FFFFFFF
25448+
} VkDataGraphOpticalFlowImageUsageFlagBitsARM;
25449+
typedef VkFlags VkDataGraphOpticalFlowImageUsageFlagsARM;
25450+
25451+
typedef enum VkDataGraphOpticalFlowExecuteFlagBitsARM {
25452+
VK_DATA_GRAPH_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_ARM = 0x00000001,
25453+
VK_DATA_GRAPH_OPTICAL_FLOW_EXECUTE_INPUT_UNCHANGED_BIT_ARM = 0x00000002,
25454+
VK_DATA_GRAPH_OPTICAL_FLOW_EXECUTE_REFERENCE_UNCHANGED_BIT_ARM = 0x00000004,
25455+
VK_DATA_GRAPH_OPTICAL_FLOW_EXECUTE_INPUT_IS_PREVIOUS_REFERENCE_BIT_ARM = 0x00000008,
25456+
VK_DATA_GRAPH_OPTICAL_FLOW_EXECUTE_REFERENCE_IS_PREVIOUS_INPUT_BIT_ARM = 0x00000010,
25457+
VK_DATA_GRAPH_OPTICAL_FLOW_EXECUTE_FLAG_BITS_MAX_ENUM_ARM = 0x7FFFFFFF
25458+
} VkDataGraphOpticalFlowExecuteFlagBitsARM;
25459+
typedef VkFlags VkDataGraphOpticalFlowExecuteFlagsARM;
25460+
typedef struct VkPhysicalDeviceDataGraphOpticalFlowFeaturesARM {
25461+
VkStructureType sType;
25462+
void* pNext;
25463+
VkBool32 dataGraphOpticalFlow;
25464+
} VkPhysicalDeviceDataGraphOpticalFlowFeaturesARM;
25465+
25466+
typedef struct VkQueueFamilyDataGraphOpticalFlowPropertiesARM {
25467+
VkStructureType sType;
25468+
void* pNext;
25469+
VkDataGraphOpticalFlowGridSizeFlagsARM supportedOutputGridSizes;
25470+
VkDataGraphOpticalFlowGridSizeFlagsARM supportedHintGridSizes;
25471+
VkBool32 hintSupported;
25472+
VkBool32 costSupported;
25473+
uint32_t minWidth;
25474+
uint32_t minHeight;
25475+
uint32_t maxWidth;
25476+
uint32_t maxHeight;
25477+
} VkQueueFamilyDataGraphOpticalFlowPropertiesARM;
25478+
25479+
typedef struct VkDataGraphPipelineOpticalFlowCreateInfoARM {
25480+
VkStructureType sType;
25481+
void* pNext;
25482+
uint32_t width;
25483+
uint32_t height;
25484+
VkFormat imageFormat;
25485+
VkFormat flowVectorFormat;
25486+
VkFormat costFormat;
25487+
VkDataGraphOpticalFlowGridSizeFlagsARM outputGridSize;
25488+
VkDataGraphOpticalFlowGridSizeFlagsARM hintGridSize;
25489+
VkDataGraphOpticalFlowPerformanceLevelARM performanceLevel;
25490+
VkDataGraphOpticalFlowCreateFlagsARM flags;
25491+
} VkDataGraphPipelineOpticalFlowCreateInfoARM;
25492+
25493+
typedef struct VkDataGraphOpticalFlowImageFormatPropertiesARM {
25494+
VkStructureType sType;
25495+
void* pNext;
25496+
VkFormat format;
25497+
} VkDataGraphOpticalFlowImageFormatPropertiesARM;
25498+
25499+
typedef struct VkDataGraphOpticalFlowImageFormatInfoARM {
25500+
VkStructureType sType;
25501+
const void* pNext;
25502+
VkDataGraphOpticalFlowImageUsageFlagsARM usage;
25503+
} VkDataGraphOpticalFlowImageFormatInfoARM;
25504+
25505+
typedef struct VkDataGraphPipelineOpticalFlowDispatchInfoARM {
25506+
VkStructureType sType;
25507+
void* pNext;
25508+
VkDataGraphOpticalFlowExecuteFlagsARM flags;
25509+
uint32_t meanFlowL1NormHint;
25510+
} VkDataGraphPipelineOpticalFlowDispatchInfoARM;
25511+
25512+
typedef struct VkDataGraphPipelineResourceInfoImageLayoutARM {
25513+
VkStructureType sType;
25514+
const void* pNext;
25515+
VkImageLayout layout;
25516+
} VkDataGraphPipelineResourceInfoImageLayoutARM;
25517+
25518+
typedef struct VkDataGraphPipelineSingleNodeConnectionARM {
25519+
VkStructureType sType;
25520+
void* pNext;
25521+
uint32_t set;
25522+
uint32_t binding;
25523+
VkDataGraphPipelineNodeConnectionTypeARM connection;
25524+
} VkDataGraphPipelineSingleNodeConnectionARM;
25525+
25526+
typedef struct VkDataGraphPipelineSingleNodeCreateInfoARM {
25527+
VkStructureType sType;
25528+
void* pNext;
25529+
VkDataGraphPipelineNodeTypeARM nodeType;
25530+
uint32_t connectionCount;
25531+
const VkDataGraphPipelineSingleNodeConnectionARM* pConnections;
25532+
} VkDataGraphPipelineSingleNodeCreateInfoARM;
25533+
25534+
typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, const VkQueueFamilyDataGraphPropertiesARM* pQueueFamilyDataGraphProperties, const VkDataGraphOpticalFlowImageFormatInfoARM* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkDataGraphOpticalFlowImageFormatPropertiesARM* pImageFormatProperties);
25535+
25536+
#ifndef VK_NO_PROTOTYPES
25537+
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
25538+
VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM(
25539+
VkPhysicalDevice physicalDevice,
25540+
uint32_t queueFamilyIndex,
25541+
const VkQueueFamilyDataGraphPropertiesARM* pQueueFamilyDataGraphProperties,
25542+
const VkDataGraphOpticalFlowImageFormatInfoARM* pOpticalFlowImageFormatInfo,
25543+
uint32_t* pFormatCount,
25544+
VkDataGraphOpticalFlowImageFormatPropertiesARM* pImageFormatProperties);
25545+
#endif
25546+
#endif
25547+
25548+
2538125549
// VK_EXT_shader_long_vector is a preprocessor guard. Do not pass it to API calls.
2538225550
#define VK_EXT_shader_long_vector 1
2538325551
#define VK_EXT_SHADER_LONG_VECTOR_SPEC_VERSION 1

0 commit comments

Comments
 (0)