Update for Vulkan-Docs 1.2.142

This commit is contained in:
Jon Leech 2020-06-01 04:52:39 -07:00 committed by Jon Leech
parent 09531f2793
commit db1a98c6cc
8 changed files with 3050 additions and 1579 deletions

File diff suppressed because it is too large Load diff

View file

@ -31,7 +31,7 @@ extern "C" {
#define VK_KHR_deferred_host_operations 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeferredOperationKHR)
#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 2
#define VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION 3
#define VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME "VK_KHR_deferred_host_operations"
typedef struct VkDeferredOperationInfoKHR {
VkStructureType sType;
@ -307,7 +307,7 @@ typedef struct VkCopyAccelerationStructureInfoKHR {
typedef VkResult (VKAPI_PTR *PFN_vkCreateAccelerationStructureKHR)(VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkAccelerationStructureKHR* pAccelerationStructure);
typedef void (VKAPI_PTR *PFN_vkGetAccelerationStructureMemoryRequirementsKHR)(VkDevice device, const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo, VkMemoryRequirements2* pMemoryRequirements);
typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureKHR)(VkCommandBuffer commandBuffer, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureIndirectKHR)(VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, uint32_t indirectStride);
typedef void (VKAPI_PTR *PFN_vkCmdBuildAccelerationStructureIndirectKHR)(VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, uint32_t indirectStride);
typedef VkResult (VKAPI_PTR *PFN_vkBuildAccelerationStructureKHR)(VkDevice device, uint32_t infoCount, const VkAccelerationStructureBuildGeometryInfoKHR* pInfos, const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureKHR)(VkDevice device, const VkCopyAccelerationStructureInfoKHR* pInfo);
typedef VkResult (VKAPI_PTR *PFN_vkCopyAccelerationStructureToMemoryKHR)(VkDevice device, const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);

File diff suppressed because it is too large Load diff

View file

@ -119,6 +119,7 @@ class GeneratorOptions:
conventions=None,
filename=None,
directory='.',
genpath=None,
apiname=None,
profile=None,
versions='.*',
@ -136,7 +137,8 @@ class GeneratorOptions:
- conventions - may be mandatory for some generators:
an object that implements ConventionsBase
- filename - basename of file to generate, or None to write to stdout.
- directory - directory in which to generate filename
- directory - directory in which to generate files
- genpath - path to previously generated files, such as api.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.
@ -176,6 +178,9 @@ class GeneratorOptions:
self.filename = filename
"basename of file to generate, or None to write to stdout."
self.genpath = genpath
"""path to previously generated files, such as api.py"""
self.directory = directory
"directory in which to generate filename"
@ -273,6 +278,10 @@ class OutputGenerator:
self.extBlockSize = 1000
self.madeDirs = {}
# API dictionary, which may be loaded by the beginFile method of
# derived generators.
self.apidict = None
def logMsg(self, level, *args):
"""Write a message of different categories to different
destinations.
@ -575,6 +584,17 @@ 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
# 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
except ImportError:
self.apidict = None
self.conventions = genOpts.conventions
# Open a temporary file for accumulating output.

View file

@ -92,6 +92,9 @@ def makeGenOpts(args):
# Output target directory
directory = args.directory
# Path to generated files, particularly api.py
genpath = args.genpath
# Descriptive names for various regexp patterns used to select
# versions and extensions
allFeatures = allExtensions = r'.*'
@ -150,6 +153,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'timeMarker',
directory = directory,
genpath = genpath,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -174,6 +178,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'api.py',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -192,6 +197,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'timeMarker',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -209,6 +215,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'timeMarker',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -230,6 +237,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'timeMarker',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -248,6 +256,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'timeMarker',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -323,6 +332,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = headername,
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -361,6 +371,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'vulkan_core.h',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -392,14 +403,47 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'vulkan10.h',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = 'VK_VERSION_1_0',
emitversions = 'VK_VERSION_1_0',
defaultExtensions = defaultExtensions,
defaultExtensions = None,
addExtensions = None,
removeExtensions = removeExtensionsPat,
emitExtensions = emitExtensionsPat,
removeExtensions = None,
emitExtensions = None,
prefixText = prefixStrings + vkPrefixStrings,
genFuncPointers = True,
protectFile = protectFile,
protectFeature = False,
protectProto = '#ifndef',
protectProtoStr = 'VK_NO_PROTOTYPES',
apicall = 'VKAPI_ATTR ',
apientry = 'VKAPI_CALL ',
apientryp = 'VKAPI_PTR *',
alignFuncParam = 48)
]
# Unused - vulkan11.h target.
# It is possible to generate a header with just the Vulkan 1.0 +
# extension interfaces defined, but since the promoted KHR extensions
# are now defined in terms of the 1.1 interfaces, such a header is very
# similar to vulkan_core.h.
genOpts['vulkan11.h'] = [
COutputGenerator,
CGeneratorOptions(
conventions = conventions,
filename = 'vulkan11.h',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = '^VK_VERSION_1_[01]$',
emitversions = '^VK_VERSION_1_[01]$',
defaultExtensions = None,
addExtensions = None,
removeExtensions = None,
emitExtensions = None,
prefixText = prefixStrings + vkPrefixStrings,
genFuncPointers = True,
protectFile = protectFile,
@ -418,6 +462,7 @@ def makeGenOpts(args):
conventions = conventions,
filename = 'alias.h',
directory = directory,
genpath = None,
apiname = 'vulkan',
profile = None,
versions = featuresPat,
@ -519,7 +564,9 @@ if __name__ == '__main__':
parser.add_argument('-time', action='store_true',
help='Enable timing')
parser.add_argument('-validate', action='store_true',
help='Enable group validation')
help='Enable XML group validation')
parser.add_argument('-genpath', action='store', default='gen',
help='Path to generated files')
parser.add_argument('-o', action='store', dest='directory',
default='.',
help='Create target and related files in specified directory')

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

View file

@ -187,6 +187,12 @@ class VulkanConventions(ConventionsBase):
"""Return relpath to the Asciidoctor specification sources in this project."""
return '{generated}/meta'
@property
def special_use_section_anchor(self):
"""Return asciidoctor anchor name in the API Specification of the
section describing extension special uses in detail."""
return 'extendingvulkan-compatibility-specialuse'
@property
def extra_refpage_headers(self):
"""Return any extra text to add to refpage headers."""