mirror of
https://github.com/KhronosGroup/Vulkan-Headers
synced 2024-11-21 06:26:00 -07:00
Update for Vulkan-Docs 1.3.223
This commit is contained in:
parent
87d2aa9d77
commit
ff92049ebd
13 changed files with 8731 additions and 8086 deletions
File diff suppressed because it is too large
Load diff
|
@ -72,7 +72,7 @@ extern "C" {
|
|||
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
|
||||
|
||||
// Version of this file
|
||||
#define VK_HEADER_VERSION 222
|
||||
#define VK_HEADER_VERSION 223
|
||||
|
||||
// Complete version of this file
|
||||
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
|
||||
|
@ -13183,7 +13183,7 @@ typedef VkPhysicalDeviceTexelBufferAlignmentProperties VkPhysicalDeviceTexelBuff
|
|||
|
||||
|
||||
#define VK_QCOM_render_pass_transform 1
|
||||
#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 2
|
||||
#define VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION 3
|
||||
#define VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME "VK_QCOM_render_pass_transform"
|
||||
typedef struct VkRenderPassTransformBeginInfoQCOM {
|
||||
VkStructureType sType;
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -8,6 +8,8 @@
|
|||
#ifndef VULKAN_STRUCTS_HPP
|
||||
#define VULKAN_STRUCTS_HPP
|
||||
|
||||
#include <cstring> // strcmp
|
||||
|
||||
namespace VULKAN_HPP_NAMESPACE
|
||||
{
|
||||
//===============
|
||||
|
|
7671
include/vulkan/vulkan_to_string.hpp
Normal file
7671
include/vulkan/vulkan_to_string.hpp
Normal file
File diff suppressed because it is too large
Load diff
|
@ -227,11 +227,11 @@ class COutputGenerator(OutputGenerator):
|
|||
|
||||
# Do not put comments after #endif closing blocks if this is not set
|
||||
if not self.genOpts.conventions.protectProtoComment:
|
||||
return '#endif'
|
||||
return ''
|
||||
elif 'ifdef' in protect_directive:
|
||||
return '#endif /* ' + protect_str + ' */'
|
||||
return f' /* {protect_str} */'
|
||||
else:
|
||||
return '#endif /* !' + protect_str + ' */'
|
||||
return f' /* !{protect_str} */'
|
||||
|
||||
def endFeature(self):
|
||||
"Actually write the interface to the output file."
|
||||
|
@ -274,22 +274,26 @@ class COutputGenerator(OutputGenerator):
|
|||
self.genOpts.protectExtensionProtoStr, file=self.outFile)
|
||||
write('\n'.join(self.sections['command']), end='', file=self.outFile)
|
||||
if self.genOpts.protectExtensionProto and not is_core:
|
||||
write(self._endProtectComment(protect_directive=self.genOpts.protectExtensionProto,
|
||||
write('#endif' +
|
||||
self._endProtectComment(protect_directive=self.genOpts.protectExtensionProto,
|
||||
protect_str=self.genOpts.protectExtensionProtoStr),
|
||||
file=self.outFile)
|
||||
if self.genOpts.protectProto:
|
||||
write(self._endProtectComment(protect_directive=self.genOpts.protectProto,
|
||||
write('#endif' +
|
||||
self._endProtectComment(protect_directive=self.genOpts.protectProto,
|
||||
protect_str=self.genOpts.protectProtoStr),
|
||||
file=self.outFile)
|
||||
else:
|
||||
self.newline()
|
||||
|
||||
if self.featureExtraProtect is not None:
|
||||
write(self._endProtectComment(protect_str=self.featureExtraProtect),
|
||||
write('#endif' +
|
||||
self._endProtectComment(protect_str=self.featureExtraProtect),
|
||||
file=self.outFile)
|
||||
|
||||
if self.genOpts.protectFeature:
|
||||
write(self._endProtectComment(protect_str=self.featureName),
|
||||
write('#endif' +
|
||||
self._endProtectComment(protect_str=self.featureName),
|
||||
file=self.outFile)
|
||||
# Finish processing in superclass
|
||||
OutputGenerator.endFeature(self)
|
||||
|
|
|
@ -1,358 +0,0 @@
|
|||
#!/usr/bin/python3 -i
|
||||
#
|
||||
# Copyright 2013-2022 The Khronos Group Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# Base class for working-group-specific style conventions,
|
||||
# used in generation.
|
||||
|
||||
from enum import Enum
|
||||
|
||||
# Type categories that respond "False" to isStructAlwaysValid
|
||||
# basetype is home to typedefs like ..Bool32
|
||||
CATEGORIES_REQUIRING_VALIDATION = set(('handle',
|
||||
'enum',
|
||||
'bitmask',
|
||||
'basetype',
|
||||
None))
|
||||
|
||||
# These are basic C types pulled in via openxr_platform_defines.h
|
||||
TYPES_KNOWN_ALWAYS_VALID = set(('char',
|
||||
'float',
|
||||
'int8_t', 'uint8_t',
|
||||
'int32_t', 'uint32_t',
|
||||
'int64_t', 'uint64_t',
|
||||
'size_t',
|
||||
'uintptr_t',
|
||||
'int',
|
||||
))
|
||||
|
||||
|
||||
class ProseListFormats(Enum):
|
||||
"""A connective, possibly with a quantifier."""
|
||||
AND = 0
|
||||
EACH_AND = 1
|
||||
OR = 2
|
||||
ANY_OR = 3
|
||||
|
||||
@classmethod
|
||||
def from_string(cls, s):
|
||||
if s == 'or':
|
||||
return cls.OR
|
||||
if s == 'and':
|
||||
return cls.AND
|
||||
return None
|
||||
|
||||
@property
|
||||
def connective(self):
|
||||
if self in (ProseListFormats.OR, ProseListFormats.ANY_OR):
|
||||
return 'or'
|
||||
return 'and'
|
||||
|
||||
def quantifier(self, n):
|
||||
"""Return the desired quantifier for a list of a given length."""
|
||||
if self == ProseListFormats.ANY_OR:
|
||||
if n > 1:
|
||||
return 'any of '
|
||||
elif self == ProseListFormats.EACH_AND:
|
||||
if n > 2:
|
||||
return 'each of '
|
||||
if n == 2:
|
||||
return 'both of '
|
||||
return ''
|
||||
|
||||
|
||||
class ConventionsBase:
|
||||
"""WG-specific conventions."""
|
||||
|
||||
def __init__(self):
|
||||
self._command_prefix = None
|
||||
self._type_prefix = None
|
||||
|
||||
def formatExtension(self, name):
|
||||
"""Mark up an extension name as a link the spec."""
|
||||
return '`apiext:{}`'.format(name)
|
||||
|
||||
@property
|
||||
def null(self):
|
||||
"""Preferred spelling of NULL."""
|
||||
raise NotImplementedError
|
||||
|
||||
def makeProseList(self, elements, fmt=ProseListFormats.AND, with_verb=False, *args, **kwargs):
|
||||
"""Make a (comma-separated) list for use in prose.
|
||||
|
||||
Adds a connective (by default, 'and')
|
||||
before the last element if there are more than 1.
|
||||
|
||||
Adds the right one of "is" or "are" to the end if with_verb is true.
|
||||
|
||||
Optionally adds a quantifier (like 'any') before a list of 2 or more,
|
||||
if specified by fmt.
|
||||
|
||||
Override with a different method or different call to
|
||||
_implMakeProseList if you want to add a comma for two elements,
|
||||
or not use a serial comma.
|
||||
"""
|
||||
return self._implMakeProseList(elements, fmt, with_verb, *args, **kwargs)
|
||||
|
||||
@property
|
||||
def struct_macro(self):
|
||||
"""Get the appropriate format macro for a structure.
|
||||
|
||||
May override.
|
||||
"""
|
||||
return 'slink:'
|
||||
|
||||
@property
|
||||
def external_macro(self):
|
||||
"""Get the appropriate format macro for an external type like uint32_t.
|
||||
|
||||
May override.
|
||||
"""
|
||||
return 'code:'
|
||||
|
||||
def makeStructName(self, name):
|
||||
"""Prepend the appropriate format macro for a structure to a structure type name.
|
||||
|
||||
Uses struct_macro, so just override that if you want to change behavior.
|
||||
"""
|
||||
return self.struct_macro + name
|
||||
|
||||
def makeExternalTypeName(self, name):
|
||||
"""Prepend the appropriate format macro for an external type like uint32_t to a type name.
|
||||
|
||||
Uses external_macro, so just override that if you want to change behavior.
|
||||
"""
|
||||
return self.external_macro + name
|
||||
|
||||
def _implMakeProseList(self, elements, fmt, with_verb, comma_for_two_elts=False, serial_comma=True):
|
||||
"""Internal-use implementation to make a (comma-separated) list for use in prose.
|
||||
|
||||
Adds a connective (by default, 'and')
|
||||
before the last element if there are more than 1,
|
||||
and only includes commas if there are more than 2
|
||||
(if comma_for_two_elts is False).
|
||||
|
||||
Adds the right one of "is" or "are" to the end if with_verb is true.
|
||||
|
||||
Optionally adds a quantifier (like 'any') before a list of 2 or more,
|
||||
if specified by fmt.
|
||||
|
||||
Do not edit these defaults, override self.makeProseList().
|
||||
"""
|
||||
assert(serial_comma) # did not implement what we did not need
|
||||
if isinstance(fmt, str):
|
||||
fmt = ProseListFormats.from_string(fmt)
|
||||
|
||||
my_elts = list(elements)
|
||||
if len(my_elts) > 1:
|
||||
my_elts[-1] = '{} {}'.format(fmt.connective, my_elts[-1])
|
||||
|
||||
if not comma_for_two_elts and len(my_elts) <= 2:
|
||||
prose = ' '.join(my_elts)
|
||||
else:
|
||||
prose = ', '.join(my_elts)
|
||||
|
||||
quantifier = fmt.quantifier(len(my_elts))
|
||||
|
||||
parts = [quantifier, prose]
|
||||
|
||||
if with_verb:
|
||||
if len(my_elts) > 1:
|
||||
parts.append(' are')
|
||||
else:
|
||||
parts.append(' is')
|
||||
return ''.join(parts)
|
||||
|
||||
@property
|
||||
def file_suffix(self):
|
||||
"""Return suffix of generated Asciidoctor files"""
|
||||
raise NotImplementedError
|
||||
|
||||
def api_name(self, spectype=None):
|
||||
"""Return API or specification name for citations in ref pages.
|
||||
|
||||
spectype is the spec this refpage is for.
|
||||
'api' (the default value) is the main API Specification.
|
||||
If an unrecognized spectype is given, returns None.
|
||||
|
||||
Must implement."""
|
||||
raise NotImplementedError
|
||||
|
||||
def should_insert_may_alias_macro(self, genOpts):
|
||||
"""Return true if we should insert a "may alias" macro in this file.
|
||||
|
||||
Only used by OpenXR right now."""
|
||||
return False
|
||||
|
||||
@property
|
||||
def command_prefix(self):
|
||||
"""Return the expected prefix of commands/functions.
|
||||
|
||||
Implemented in terms of api_prefix."""
|
||||
if not self._command_prefix:
|
||||
self._command_prefix = self.api_prefix[:].replace('_', '').lower()
|
||||
return self._command_prefix
|
||||
|
||||
@property
|
||||
def type_prefix(self):
|
||||
"""Return the expected prefix of type names.
|
||||
|
||||
Implemented in terms of command_prefix (and in turn, api_prefix)."""
|
||||
if not self._type_prefix:
|
||||
self._type_prefix = ''.join(
|
||||
(self.command_prefix[0:1].upper(), self.command_prefix[1:]))
|
||||
return self._type_prefix
|
||||
|
||||
@property
|
||||
def api_prefix(self):
|
||||
"""Return API token prefix.
|
||||
|
||||
Typically two uppercase letters followed by an underscore.
|
||||
|
||||
Must implement."""
|
||||
raise NotImplementedError
|
||||
|
||||
@property
|
||||
def api_version_prefix(self):
|
||||
"""Return API core version token prefix.
|
||||
|
||||
Implemented in terms of api_prefix.
|
||||
|
||||
May override."""
|
||||
return self.api_prefix + 'VERSION_'
|
||||
|
||||
@property
|
||||
def KHR_prefix(self):
|
||||
"""Return extension name prefix for KHR extensions.
|
||||
|
||||
Implemented in terms of api_prefix.
|
||||
|
||||
May override."""
|
||||
return self.api_prefix + 'KHR_'
|
||||
|
||||
@property
|
||||
def EXT_prefix(self):
|
||||
"""Return extension name prefix for EXT extensions.
|
||||
|
||||
Implemented in terms of api_prefix.
|
||||
|
||||
May override."""
|
||||
return self.api_prefix + 'EXT_'
|
||||
|
||||
def writeFeature(self, featureExtraProtect, filename):
|
||||
"""Return True if OutputGenerator.endFeature should write this feature.
|
||||
|
||||
Defaults to always True.
|
||||
Used in COutputGenerator.
|
||||
|
||||
May override."""
|
||||
return True
|
||||
|
||||
def requires_error_validation(self, return_type):
|
||||
"""Return True if the return_type element is an API result code
|
||||
requiring error validation.
|
||||
|
||||
Defaults to always False.
|
||||
|
||||
May override."""
|
||||
return False
|
||||
|
||||
@property
|
||||
def required_errors(self):
|
||||
"""Return a list of required error codes for validation.
|
||||
|
||||
Defaults to an empty list.
|
||||
|
||||
May override."""
|
||||
return []
|
||||
|
||||
def is_voidpointer_alias(self, tag, text, tail):
|
||||
"""Return True if the declaration components (tag,text,tail) of an
|
||||
element represents a void * type.
|
||||
|
||||
Defaults to a reasonable implementation.
|
||||
|
||||
May override."""
|
||||
return tag == 'type' and text == 'void' and tail.startswith('*')
|
||||
|
||||
def make_voidpointer_alias(self, tail):
|
||||
"""Reformat a void * declaration to include the API alias macro.
|
||||
|
||||
Defaults to a no-op.
|
||||
|
||||
Must override if you actually want to use this feature in your project."""
|
||||
return tail
|
||||
|
||||
def category_requires_validation(self, category):
|
||||
"""Return True if the given type 'category' always requires validation.
|
||||
|
||||
Defaults to a reasonable implementation.
|
||||
|
||||
May override."""
|
||||
return category in CATEGORIES_REQUIRING_VALIDATION
|
||||
|
||||
def type_always_valid(self, typename):
|
||||
"""Return True if the given type name is always valid (never requires validation).
|
||||
|
||||
This is for things like integers.
|
||||
|
||||
Defaults to a reasonable implementation.
|
||||
|
||||
May override."""
|
||||
return typename in TYPES_KNOWN_ALWAYS_VALID
|
||||
|
||||
@property
|
||||
def should_skip_checking_codes(self):
|
||||
"""Return True if more than the basic validation of return codes should
|
||||
be skipped for a command."""
|
||||
|
||||
return False
|
||||
|
||||
@property
|
||||
def generate_index_terms(self):
|
||||
"""Return True if asiidoctor index terms should be generated as part
|
||||
of an API interface from the docgenerator."""
|
||||
|
||||
return False
|
||||
|
||||
@property
|
||||
def generate_enum_table(self):
|
||||
"""Return True if asciidoctor tables describing enumerants in a
|
||||
group should be generated as part of group generation."""
|
||||
return False
|
||||
|
||||
@property
|
||||
def generate_max_enum_in_docs(self):
|
||||
"""Return True if MAX_ENUM tokens should be generated in
|
||||
documentation includes."""
|
||||
return False
|
||||
|
||||
|
||||
def extension_include_string(self, ext):
|
||||
"""Return format string for include:: line for an extension appendix
|
||||
file. ext is an object with the following members:
|
||||
- name - extension string string
|
||||
- vendor - vendor portion of name
|
||||
- barename - remainder of name
|
||||
|
||||
Must implement."""
|
||||
raise NotImplementedError
|
||||
|
||||
@property
|
||||
def refpage_generated_include_path(self):
|
||||
"""Return path relative to the generated reference pages, to the
|
||||
generated API include files.
|
||||
|
||||
Must implement."""
|
||||
raise NotImplementedError
|
||||
|
||||
def valid_flag_bit(self, bitpos):
|
||||
"""Return True if bitpos is an allowed numeric bit position for
|
||||
an API flag.
|
||||
|
||||
Behavior depends on the data type used for flags (which may be 32
|
||||
or 64 bits), and may depend on assumptions about compiler
|
||||
handling of sign bits in enumerated types, as well."""
|
||||
return True
|
|
@ -174,7 +174,7 @@ class GeneratorOptions:
|
|||
an object that implements ConventionsBase
|
||||
- filename - basename of file to generate, or None to write to stdout.
|
||||
- directory - directory in which to generate filename
|
||||
- genpath - path to previously generated files, such as api.py
|
||||
- genpath - path to previously generated files, such as apimap.py
|
||||
- apiname - string matching `<api>` 'apiname' attribute, e.g. 'gl'.
|
||||
- profile - string specifying API profile , e.g. 'core', or None.
|
||||
- versions - regex matching API versions to process interfaces for.
|
||||
|
@ -221,7 +221,7 @@ class GeneratorOptions:
|
|||
"basename of file to generate, or None to write to stdout."
|
||||
|
||||
self.genpath = genpath
|
||||
"""path to previously generated files, such as api.py"""
|
||||
"""path to previously generated files, such as apimap.py"""
|
||||
|
||||
self.directory = directory
|
||||
"directory in which to generate filename"
|
||||
|
@ -864,14 +864,14 @@ class OutputGenerator:
|
|||
self.should_insert_may_alias_macro = \
|
||||
self.genOpts.conventions.should_insert_may_alias_macro(self.genOpts)
|
||||
|
||||
# Try to import the API dictionary, api.py, if it exists. Nothing in
|
||||
# api.py cannot be extracted directly from the XML, and in the
|
||||
# Try to import the API dictionary, apimap.py, if it exists. Nothing
|
||||
# in apimap.py cannot be extracted directly from the XML, and in the
|
||||
# future we should do that.
|
||||
if self.genOpts.genpath is not None:
|
||||
try:
|
||||
sys.path.insert(0, self.genOpts.genpath)
|
||||
import api
|
||||
self.apidict = api
|
||||
import apimap
|
||||
self.apidict = apimap
|
||||
except ImportError:
|
||||
self.apidict = None
|
||||
|
||||
|
|
|
@ -94,7 +94,7 @@ def makeGenOpts(args):
|
|||
# Output target directory
|
||||
directory = args.directory
|
||||
|
||||
# Path to generated files, particularly api.py
|
||||
# Path to generated files, particularly apimap.py
|
||||
genpath = args.genpath
|
||||
|
||||
# Generate MISRA C-friendly headers
|
||||
|
@ -175,11 +175,11 @@ def makeGenOpts(args):
|
|||
|
||||
# Python and Ruby representations of API information, used by scripts
|
||||
# that do not need to load the full XML.
|
||||
genOpts['api.py'] = [
|
||||
genOpts['apimap.py'] = [
|
||||
PyOutputGenerator,
|
||||
DocGeneratorOptions(
|
||||
conventions = conventions,
|
||||
filename = 'api.py',
|
||||
filename = 'apimap.py',
|
||||
directory = directory,
|
||||
genpath = None,
|
||||
apiname = defaultAPIName,
|
||||
|
@ -193,11 +193,11 @@ def makeGenOpts(args):
|
|||
reparentEnums = False)
|
||||
]
|
||||
|
||||
genOpts['api.rb'] = [
|
||||
genOpts['apimap.rb'] = [
|
||||
RubyOutputGenerator,
|
||||
DocGeneratorOptions(
|
||||
conventions = conventions,
|
||||
filename = 'api.rb',
|
||||
filename = 'apimap.rb',
|
||||
directory = directory,
|
||||
genpath = None,
|
||||
apiname = defaultAPIName,
|
||||
|
@ -551,7 +551,7 @@ def makeGenOpts(args):
|
|||
# but are treated in a similar fashion for generation purposes.
|
||||
#
|
||||
# Each element of the videoStd[] array is an 'extension' name defining
|
||||
# an iterface, and is also the basis for the generated header file name.
|
||||
# an interface, and is also the basis for the generated header file name.
|
||||
|
||||
videoStd = [
|
||||
'vulkan_video_codecs_common',
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
from enum import Enum
|
||||
import abc
|
||||
import re
|
||||
|
||||
# Type categories that respond "False" to isStructAlwaysValid
|
||||
# basetype is home to typedefs like ..Bool32
|
||||
|
@ -30,6 +31,8 @@ TYPES_KNOWN_ALWAYS_VALID = set(('char',
|
|||
'int',
|
||||
))
|
||||
|
||||
# Split an extension name into vendor ID and name portions
|
||||
EXT_NAME_DECOMPOSE_RE = re.compile(r'[A-Z]+_(?P<vendor>[A-Z]+)_(?P<name>[\w_]+)')
|
||||
|
||||
class ProseListFormats(Enum):
|
||||
"""A connective, possibly with a quantifier."""
|
||||
|
@ -368,24 +371,42 @@ class ConventionsBase(abc.ABC):
|
|||
return False
|
||||
|
||||
@abc.abstractmethod
|
||||
def extension_include_string(self, ext):
|
||||
"""Return format string for include:: line for an extension appendix
|
||||
file. ext is an object with the following members:
|
||||
- name - extension string string
|
||||
- vendor - vendor portion of name
|
||||
- barename - remainder of name
|
||||
def extension_file_path(self, name):
|
||||
"""Return file path to an extension appendix relative to a directory
|
||||
containing all such appendices.
|
||||
- name - extension name
|
||||
|
||||
Must implement."""
|
||||
Must implement."""
|
||||
raise NotImplementedError
|
||||
|
||||
def extension_include_string(self, name):
|
||||
"""Return format string for include:: line for an extension appendix
|
||||
file.
|
||||
- name - extension name"""
|
||||
|
||||
return 'include::{{appendices}}/{}[]'.format(
|
||||
self.extension_file_path(name))
|
||||
|
||||
@property
|
||||
@abc.abstractmethod
|
||||
def refpage_generated_include_path(self):
|
||||
"""Return path relative to the generated reference pages, to the
|
||||
generated API include files.
|
||||
def provisional_extension_warning(self):
|
||||
"""Return True if a warning should be included in extension
|
||||
appendices for provisional extensions."""
|
||||
return True
|
||||
|
||||
Must implement."""
|
||||
raise NotImplementedError
|
||||
@property
|
||||
def generated_include_path(self):
|
||||
"""Return path relative to the generated reference pages, to the
|
||||
generated API include files."""
|
||||
|
||||
return '{generated}'
|
||||
|
||||
@property
|
||||
def include_extension_appendix_in_refpage(self):
|
||||
"""Return True if generating extension refpages by embedding
|
||||
extension appendix content (default), False otherwise
|
||||
(OpenXR)."""
|
||||
|
||||
return True
|
||||
|
||||
def valid_flag_bit(self, bitpos):
|
||||
"""Return True if bitpos is an allowed numeric bit position for
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -159,7 +159,7 @@ branch of the member gitlab server.
|
|||
<type category="define" requires="VK_MAKE_API_VERSION">// Vulkan 1.3 version number
|
||||
#define <name>VK_API_VERSION_1_3</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, 0)// Patch version should always be set to 0</type>
|
||||
<type category="define">// Version of this file
|
||||
#define <name>VK_HEADER_VERSION</name> 222</type>
|
||||
#define <name>VK_HEADER_VERSION</name> 223</type>
|
||||
<type category="define" requires="VK_HEADER_VERSION">// Complete version of this file
|
||||
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 3, VK_HEADER_VERSION)</type>
|
||||
|
||||
|
@ -3044,7 +3044,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<type category="struct" name="VkPhysicalDeviceSubgroupProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2">
|
||||
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member>
|
||||
<member optional="true"><type>void</type>* <name>pNext</name></member>
|
||||
<member limittype="exact" noautovalidity="true"><type>uint32_t</type> <name>subgroupSize</name><comment>The size of a subgroup for this queue.</comment></member>
|
||||
<member limittype="min,pot" noautovalidity="true"><type>uint32_t</type> <name>subgroupSize</name><comment>The size of a subgroup for this queue.</comment></member>
|
||||
<member limittype="bitmask" noautovalidity="true"><type>VkShaderStageFlags</type> <name>supportedStages</name><comment>Bitfield of what shader stages support subgroup operations</comment></member>
|
||||
<member limittype="bitmask" noautovalidity="true"><type>VkSubgroupFeatureFlags</type> <name>supportedOperations</name><comment>Bitfield of what subgroup operations are supported.</comment></member>
|
||||
<member limittype="bitmask" noautovalidity="true"><type>VkBool32</type> <name>quadOperationsInAllStages</name><comment>Flag to specify whether quad operations are available in all stages.</comment></member>
|
||||
|
@ -4900,8 +4900,8 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<type category="struct" name="VkPhysicalDeviceSubgroupSizeControlProperties" returnedonly="true" structextends="VkPhysicalDeviceProperties2">
|
||||
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member>
|
||||
<member optional="true"><type>void</type>* <name>pNext</name></member>
|
||||
<member limittype="min" noautovalidity="true"><type>uint32_t</type> <name>minSubgroupSize</name><comment>The minimum subgroup size supported by this device</comment></member>
|
||||
<member limittype="max" noautovalidity="true"><type>uint32_t</type> <name>maxSubgroupSize</name><comment>The maximum subgroup size supported by this device</comment></member>
|
||||
<member limittype="min,pot" noautovalidity="true"><type>uint32_t</type> <name>minSubgroupSize</name><comment>The minimum subgroup size supported by this device</comment></member>
|
||||
<member limittype="max,pot" noautovalidity="true"><type>uint32_t</type> <name>maxSubgroupSize</name><comment>The maximum subgroup size supported by this device</comment></member>
|
||||
<member limittype="max" noautovalidity="true"><type>uint32_t</type> <name>maxComputeWorkgroupSubgroups</name><comment>The maximum number of subgroups supported in a workgroup</comment></member>
|
||||
<member limittype="bitmask"><type>VkShaderStageFlags</type> <name>requiredSubgroupSizeStages</name><comment>The shader stages that support specifying a subgroup size</comment></member>
|
||||
</type>
|
||||
|
@ -4988,7 +4988,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<member limittype="exact"><type>uint8_t</type> <name>deviceLUID</name>[<enum>VK_LUID_SIZE</enum>]</member>
|
||||
<member limittype="exact"><type>uint32_t</type> <name>deviceNodeMask</name></member>
|
||||
<member limittype="exact"><type>VkBool32</type> <name>deviceLUIDValid</name></member>
|
||||
<member limittype="exact" noautovalidity="true"><type>uint32_t</type> <name>subgroupSize</name><comment>The size of a subgroup for this queue.</comment></member>
|
||||
<member limittype="min,pot" noautovalidity="true"><type>uint32_t</type> <name>subgroupSize</name><comment>The size of a subgroup for this queue.</comment></member>
|
||||
<member limittype="bitmask" noautovalidity="true"><type>VkShaderStageFlags</type> <name>subgroupSupportedStages</name><comment>Bitfield of what shader stages support subgroup operations</comment></member>
|
||||
<member limittype="bitmask" noautovalidity="true"><type>VkSubgroupFeatureFlags</type> <name>subgroupSupportedOperations</name><comment>Bitfield of what subgroup operations are supported.</comment></member>
|
||||
<member limittype="bitmask" noautovalidity="true"><type>VkBool32</type> <name>subgroupQuadOperationsInAllStages</name><comment>Flag to specify whether quad operations are available in all stages.</comment></member>
|
||||
|
@ -5128,8 +5128,8 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<type category="struct" name="VkPhysicalDeviceVulkan13Properties" returnedonly="true" structextends="VkPhysicalDeviceProperties2">
|
||||
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES"><type>VkStructureType</type> <name>sType</name></member>
|
||||
<member optional="true"><type>void</type>* <name>pNext</name></member>
|
||||
<member limittype="min" noautovalidity="true"><type>uint32_t</type> <name>minSubgroupSize</name><comment>The minimum subgroup size supported by this device</comment></member>
|
||||
<member limittype="max" noautovalidity="true"><type>uint32_t</type> <name>maxSubgroupSize</name><comment>The maximum subgroup size supported by this device</comment></member>
|
||||
<member limittype="min,pot" noautovalidity="true"><type>uint32_t</type> <name>minSubgroupSize</name><comment>The minimum subgroup size supported by this device</comment></member>
|
||||
<member limittype="max,pot" noautovalidity="true"><type>uint32_t</type> <name>maxSubgroupSize</name><comment>The maximum subgroup size supported by this device</comment></member>
|
||||
<member limittype="max" noautovalidity="true"><type>uint32_t</type> <name>maxComputeWorkgroupSubgroups</name><comment>The maximum number of subgroups supported in a workgroup</comment></member>
|
||||
<member limittype="bitmask"><type>VkShaderStageFlags</type> <name>requiredSubgroupSizeStages</name><comment>The shader stages that support specifying a subgroup size</comment></member>
|
||||
<member limittype="max"><type>uint32_t</type> <name>maxInlineUniformBlockSize</name></member>
|
||||
|
@ -5924,7 +5924,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<member optional="true">const <type>void</type>* <name>pNext</name></member>
|
||||
<member><type>VkOffset2D</type> <name>codedOffset</name><comment>The offset to be used for the picture resource, currently only used in field mode</comment></member>
|
||||
<member><type>VkExtent2D</type> <name>codedExtent</name><comment>The extent to be used for the picture resource</comment></member>
|
||||
<member><type>uint32_t</type> <name>baseArrayLayer</name><comment>TThe first array layer to be accessed for the Decode or Encode Operations</comment></member>
|
||||
<member><type>uint32_t</type> <name>baseArrayLayer</name><comment>The first array layer to be accessed for the Decode or Encode Operations</comment></member>
|
||||
<member><type>VkImageView</type> <name>imageViewBinding</name><comment>The ImageView binding of the resource</comment></member>
|
||||
</type>
|
||||
<type category="struct" name="VkVideoReferenceSlotKHR">
|
||||
|
@ -9513,9 +9513,9 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<proto><type>void</type> <name>vkUpdateDescriptorSets</name></proto>
|
||||
<param><type>VkDevice</type> <name>device</name></param>
|
||||
<param optional="true"><type>uint32_t</type> <name>descriptorWriteCount</name></param>
|
||||
<param len="descriptorWriteCount" externsync="pDescriptorWrites[].dstSet">const <type>VkWriteDescriptorSet</type>* <name>pDescriptorWrites</name></param>
|
||||
<param len="descriptorWriteCount">const <type>VkWriteDescriptorSet</type>* <name>pDescriptorWrites</name></param>
|
||||
<param optional="true"><type>uint32_t</type> <name>descriptorCopyCount</name></param>
|
||||
<param len="descriptorCopyCount" externsync="pDescriptorCopies[].dstSet">const <type>VkCopyDescriptorSet</type>* <name>pDescriptorCopies</name></param>
|
||||
<param len="descriptorCopyCount">const <type>VkCopyDescriptorSet</type>* <name>pDescriptorCopies</name></param>
|
||||
</command>
|
||||
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY">
|
||||
<proto><type>VkResult</type> <name>vkCreateFramebuffer</name></proto>
|
||||
|
@ -9859,19 +9859,19 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param><type>uint32_t</type> <name>regionCount</name></param>
|
||||
<param len="regionCount">const <type>VkImageResolve</type>* <name>pRegions</name></param>
|
||||
</command>
|
||||
<command queues="graphics,compute" renderpass="outside" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute" renderpass="outside" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetEvent</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkEvent</type> <name>event</name></param>
|
||||
<param optional="true"><type>VkPipelineStageFlags</type> <name>stageMask</name></param>
|
||||
</command>
|
||||
<command queues="graphics,compute" renderpass="outside" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute" renderpass="outside" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdResetEvent</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkEvent</type> <name>event</name></param>
|
||||
<param optional="true"><type>VkPipelineStageFlags</type> <name>stageMask</name></param>
|
||||
</command>
|
||||
<command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdWaitEvents</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>uint32_t</type> <name>eventCount</name></param>
|
||||
|
@ -9885,7 +9885,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param optional="true"><type>uint32_t</type> <name>imageMemoryBarrierCount</name></param>
|
||||
<param len="imageMemoryBarrierCount">const <type>VkImageMemoryBarrier</type>* <name>pImageMemoryBarriers</name></param>
|
||||
</command>
|
||||
<command queues="transfer,graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="transfer,graphics,compute" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdPipelineBarrier</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param optional="true"><type>VkPipelineStageFlags</type> <name>srcStageMask</name></param>
|
||||
|
@ -9898,14 +9898,14 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param optional="true"><type>uint32_t</type> <name>imageMemoryBarrierCount</name></param>
|
||||
<param len="imageMemoryBarrierCount">const <type>VkImageMemoryBarrier</type>* <name>pImageMemoryBarriers</name></param>
|
||||
</command>
|
||||
<command queues="graphics,compute,decode,encode" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute,decode,encode" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdBeginQuery</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkQueryPool</type> <name>queryPool</name></param>
|
||||
<param><type>uint32_t</type> <name>query</name></param>
|
||||
<param optional="true"><type>VkQueryControlFlags</type> <name>flags</name></param>
|
||||
</command>
|
||||
<command queues="graphics,compute,decode,encode" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute,decode,encode" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdEndQuery</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkQueryPool</type> <name>queryPool</name></param>
|
||||
|
@ -9927,7 +9927,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param><type>uint32_t</type> <name>firstQuery</name></param>
|
||||
<param><type>uint32_t</type> <name>queryCount</name></param>
|
||||
</command>
|
||||
<command queues="transfer,graphics,compute,decode,encode" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="transfer,graphics,compute,decode,encode" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdWriteTimestamp</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkPipelineStageFlagBits</type> <name>pipelineStage</name></param>
|
||||
|
@ -10585,7 +10585,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param len="bindInfoCount">const <type>VkBindImageMemoryInfo</type>* <name>pBindInfos</name></param>
|
||||
</command>
|
||||
<command name="vkBindImageMemory2KHR" alias="vkBindImageMemory2"/>
|
||||
<command queues="graphics,compute,transfer" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute,transfer" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetDeviceMask</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>uint32_t</type> <name>deviceMask</name></param>
|
||||
|
@ -10644,7 +10644,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<command>
|
||||
<proto><type>void</type> <name>vkUpdateDescriptorSetWithTemplate</name></proto>
|
||||
<param><type>VkDevice</type> <name>device</name></param>
|
||||
<param externsync="true"><type>VkDescriptorSet</type> <name>descriptorSet</name></param>
|
||||
<param><type>VkDescriptorSet</type> <name>descriptorSet</name></param>
|
||||
<param><type>VkDescriptorUpdateTemplate</type> <name>descriptorUpdateTemplate</name></param>
|
||||
<param noautovalidity="true">const <type>void</type>* <name>pData</name></param>
|
||||
</command>
|
||||
|
@ -11888,21 +11888,21 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param><type>uint32_t</type> <name>attachmentCount</name></param>
|
||||
<param len="attachmentCount">const <type>VkBool32</type>* <name>pColorWriteEnables</name></param>
|
||||
</command>
|
||||
<command queues="graphics,compute" renderpass="outside" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute" renderpass="outside" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetEvent2</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkEvent</type> <name>event</name></param>
|
||||
<param>const <type>VkDependencyInfo</type>* <name>pDependencyInfo</name></param>
|
||||
</command>
|
||||
<command name="vkCmdSetEvent2KHR" alias="vkCmdSetEvent2"/>
|
||||
<command queues="graphics,compute" renderpass="outside" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute" renderpass="outside" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdResetEvent2</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkEvent</type> <name>event</name></param>
|
||||
<param optional="true"><type>VkPipelineStageFlags2</type> <name>stageMask</name></param>
|
||||
</command>
|
||||
<command name="vkCmdResetEvent2KHR" alias="vkCmdResetEvent2"/>
|
||||
<command queues="graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="graphics,compute" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdWaitEvents2</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>uint32_t</type> <name>eventCount</name></param>
|
||||
|
@ -11910,7 +11910,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param len="eventCount">const <type>VkDependencyInfo</type>* <name>pDependencyInfos</name></param>
|
||||
</command>
|
||||
<command name="vkCmdWaitEvents2KHR" alias="vkCmdWaitEvents2"/>
|
||||
<command queues="transfer,graphics,compute" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="transfer,graphics,compute" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdPipelineBarrier2</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param>const <type>VkDependencyInfo</type>* <name>pDependencyInfo</name></param>
|
||||
|
@ -11924,7 +11924,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param optional="true" externsync="true"><type>VkFence</type> <name>fence</name></param>
|
||||
</command>
|
||||
<command name="vkQueueSubmit2KHR" alias="vkQueueSubmit2"/>
|
||||
<command queues="transfer,graphics,compute,decode,encode" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<command queues="transfer,graphics,compute,decode,encode" renderpass="both" videocoding="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdWriteTimestamp2</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param optional="true"><type>VkPipelineStageFlags2</type> <name>stage</name></param>
|
||||
|
@ -12005,27 +12005,27 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<param><type>uint32_t</type> <name>videoSessionBindMemoryCount</name></param>
|
||||
<param len="videoSessionBindMemoryCount">const <type>VkVideoBindMemoryKHR</type>* <name>pVideoSessionBindMemories</name></param>
|
||||
</command>
|
||||
<command queues="decode" renderpass="outside" cmdbufferlevel="primary">
|
||||
<command queues="decode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary">
|
||||
<proto><type>void</type> <name>vkCmdDecodeVideoKHR</name></proto>
|
||||
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param>const <type>VkVideoDecodeInfoKHR</type>* <name>pFrameInfo</name></param>
|
||||
</command>
|
||||
<command queues="decode,encode" renderpass="outside" cmdbufferlevel="primary">
|
||||
<command queues="decode,encode" renderpass="outside" videocoding="outside" cmdbufferlevel="primary">
|
||||
<proto><type>void</type> <name>vkCmdBeginVideoCodingKHR</name></proto>
|
||||
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param>const <type>VkVideoBeginCodingInfoKHR</type>* <name>pBeginInfo</name></param>
|
||||
</command>
|
||||
<command queues="decode,encode" renderpass="outside" cmdbufferlevel="primary">
|
||||
<command queues="decode,encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary">
|
||||
<proto><type>void</type> <name>vkCmdControlVideoCodingKHR</name></proto>
|
||||
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param>const <type>VkVideoCodingControlInfoKHR</type>* <name>pCodingControlInfo</name></param>
|
||||
</command>
|
||||
<command queues="decode,encode" renderpass="outside" cmdbufferlevel="primary">
|
||||
<command queues="decode,encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary">
|
||||
<proto><type>void</type> <name>vkCmdEndVideoCodingKHR</name></proto>
|
||||
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param>const <type>VkVideoEndCodingInfoKHR</type>* <name>pEndCodingInfo</name></param>
|
||||
</command>
|
||||
<command queues="encode" renderpass="outside" cmdbufferlevel="primary">
|
||||
<command queues="encode" renderpass="outside" videocoding="inside" cmdbufferlevel="primary">
|
||||
<proto><type>void</type> <name>vkCmdEncodeVideoKHR</name></proto>
|
||||
<param><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param>const <type>VkVideoEncodeInfoKHR</type>* <name>pEncodeInfo</name></param>
|
||||
|
@ -13891,6 +13891,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
|
||||
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
|
||||
<enum bitpos="5" extends="VkQueueFlagBits" name="VK_QUEUE_VIDEO_DECODE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
|
||||
<!-- VkPipelineStageFlagBits bitpos="26" is reserved by this extension, but not used -->
|
||||
<enum bitpos="26" extends="VkPipelineStageFlagBits2" name="VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
|
||||
<enum bitpos="35" extends="VkAccessFlagBits2" name="VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS" />
|
||||
<enum bitpos="36" extends="VkAccessFlagBits2" name="VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
|
||||
|
@ -17074,6 +17075,10 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<require>
|
||||
<enum value="0" name="VK_EXT_EXTENSION_259_SPEC_VERSION"/>
|
||||
<enum value=""VK_EXT_extension_259"" name="VK_EXT_EXTENSION_259_EXTENSION_NAME"/>
|
||||
<enum bitpos="9" extends="VkQueueFlagBits" name="VK_QUEUE_RESERVED_9_BIT_EXT"/>
|
||||
<enum bitpos="44" extends="VkFormatFeatureFlagBits2" name="VK_FORMAT_FEATURE_2_RESERVED_44_BIT_EXT"/>
|
||||
<enum bitpos="45" extends="VkFormatFeatureFlagBits2" name="VK_FORMAT_FEATURE_2_RESERVED_45_BIT_EXT"/>
|
||||
<enum bitpos="19" extends="VkImageCreateFlagBits" name="VK_IMAGE_CREATE_RESERVED_19_BIT_EXT"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_EXT_line_rasterization" number="260" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Jeff Bolz @jeffbolznv" specialuse="cadsupport" supported="vulkan">
|
||||
|
@ -17348,7 +17353,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
</extension>
|
||||
<extension name="VK_QCOM_render_pass_transform" number="283" type="device" requires="VK_KHR_swapchain,VK_KHR_surface" author="QCOM" contact="Jeff Leger @jackohound" supported="vulkan">
|
||||
<require>
|
||||
<enum value="2" name="VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION"/>
|
||||
<enum value="3" name="VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION"/>
|
||||
<enum value=""VK_QCOM_render_pass_transform"" name="VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME"/>
|
||||
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"/>
|
||||
<enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"/>
|
||||
|
@ -17547,6 +17552,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<require>
|
||||
<enum value="5" name="VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION"/>
|
||||
<enum value=""VK_KHR_video_encode_queue"" name="VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME"/>
|
||||
<!-- VkPipelineStageFlagBits bitpos="27" is reserved by this extension, but not used -->
|
||||
<enum bitpos="27" extends="VkPipelineStageFlagBits2" name="VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS" />
|
||||
<enum bitpos="37" extends="VkAccessFlagBits2" name="VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS" />
|
||||
<enum bitpos="38" extends="VkAccessFlagBits2" name="VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR" protect="VK_ENABLE_BETA_EXTENSIONS"/>
|
||||
|
@ -18541,6 +18547,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
|
|||
<type name="VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR"/>
|
||||
</require>
|
||||
<require extension="VK_KHR_synchronization2">
|
||||
<!-- VkPipelineStageFlagBits bitpos="28" is reserved by this extension, but not used -->
|
||||
<enum bitpos="28" extends="VkPipelineStageFlagBits2" name="VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR"/>
|
||||
</require>
|
||||
<require extension="VK_KHR_synchronization2,VK_KHR_ray_tracing_pipeline">
|
||||
|
|
|
@ -254,21 +254,12 @@ class VulkanConventions(ConventionsBase):
|
|||
|
||||
return True
|
||||
|
||||
def extension_include_string(self, ext):
|
||||
"""Return format string for include:: line for an extension appendix
|
||||
file. ext is an object with the following members:
|
||||
- name - extension string string
|
||||
- vendor - vendor portion of name
|
||||
- barename - remainder of name"""
|
||||
def extension_file_path(self, name):
|
||||
"""Return file path to an extension appendix relative to a directory
|
||||
containing all such appendices.
|
||||
- name - extension name"""
|
||||
|
||||
return 'include::{{appendices}}/{name}{suffix}[]'.format(
|
||||
name=ext.name, suffix=self.file_suffix)
|
||||
|
||||
@property
|
||||
def refpage_generated_include_path(self):
|
||||
"""Return path relative to the generated reference pages, to the
|
||||
generated API include files."""
|
||||
return "{generated}"
|
||||
return f'{name}{self.file_suffix}'
|
||||
|
||||
def valid_flag_bit(self, bitpos):
|
||||
"""Return True if bitpos is an allowed numeric bit position for
|
||||
|
|
Loading…
Reference in a new issue