vulkan-object 1.4.366__tar.gz → 1.4.367__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. {vulkan_object-1.4.366/src/vulkan_object.egg-info → vulkan_object-1.4.367}/PKG-INFO +1 -1
  2. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/pyproject.toml +1 -1
  3. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/parse_dependency.py +75 -0
  4. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/reg.py +46 -14
  5. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/vk.xml +70 -12
  6. {vulkan_object-1.4.366 → vulkan_object-1.4.367/src/vulkan_object.egg-info}/PKG-INFO +1 -1
  7. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/LICENSE +0 -0
  8. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/MANIFEST.in +0 -0
  9. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/README.md +0 -0
  10. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/setup.cfg +0 -0
  11. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/__init__.py +0 -0
  12. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/apiconventions.py +0 -0
  13. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/base_generator.py +0 -0
  14. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/cgenerator.py +0 -0
  15. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/generator.py +0 -0
  16. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/spec_tools/conventions.py +0 -0
  17. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/spec_tools/util.py +0 -0
  18. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/stripAPI.py +0 -0
  19. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/video.xml +0 -0
  20. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/vkconventions.py +0 -0
  21. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object/vulkan_object.py +0 -0
  22. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object.egg-info/SOURCES.txt +0 -0
  23. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object.egg-info/dependency_links.txt +0 -0
  24. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object.egg-info/requires.txt +0 -0
  25. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/src/vulkan_object.egg-info/top_level.txt +0 -0
  26. {vulkan_object-1.4.366 → vulkan_object-1.4.367}/tests/test_registry.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: vulkan-object
3
- Version: 1.4.366
3
+ Version: 1.4.367
4
4
  Summary: An easy-to-use Python wrapper for the Vulkan API registry.
5
5
  Author-email: Spencer Fricke <spencer@lunarg.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "vulkan-object"
7
- version = "1.4.366"
7
+ version = "1.4.367"
8
8
  dependencies = [
9
9
  "pyparsing",
10
10
  ]
@@ -18,6 +18,11 @@
18
18
  # dependencyNames(dependency) returns a set of the extension and
19
19
  # version names in the expression.
20
20
  #
21
+ # pruneDependency(dependency, isSupported) returns the expression with the
22
+ # names for which isSupported returns False removed and the result
23
+ # simplified, the expression itself if all its names are supported, or None
24
+ # if the remaining expression cannot be satisfied.
25
+ #
21
26
  # dependencyMarkup(dependency) returns a string containing asciidoctor
22
27
  # markup for English equivalent to the expression, suitable for extension
23
28
  # appendices.
@@ -229,6 +234,76 @@ def evaluateDependency(dependency, isSupported):
229
234
  val = evaluateStack(exprStack[:], isSupported)
230
235
  return val
231
236
 
237
+ def pruneStack(stack, isSupported):
238
+ """Evaluate an expression stack, returning an expression tree with the
239
+ names which are not supported removed, or None if the expression
240
+ cannot be satisfied.
241
+
242
+ A tree is either a name, or a tuple (operator, lhs, rhs).
243
+
244
+ - stack - the stack
245
+ - isSupported - function taking a version or extension name string and
246
+ returning True or False if that name is supported or not."""
247
+
248
+ op, num_args = stack.pop(), 0
249
+ if isinstance(op, tuple):
250
+ op, num_args = op
251
+
252
+ if op in '+,':
253
+ # Note: operands are pushed onto the stack in reverse order
254
+ rhs = pruneStack(stack, isSupported)
255
+ lhs = pruneStack(stack, isSupported)
256
+ if op == '+':
257
+ if lhs is None or rhs is None:
258
+ return None
259
+ else:
260
+ if lhs is None:
261
+ return rhs
262
+ if rhs is None:
263
+ return lhs
264
+ return (op, lhs, rhs)
265
+ elif op[0].isalpha():
266
+ return op if isSupported(op) else None
267
+ else:
268
+ raise Exception(f'invalid op: {op}')
269
+
270
+ def pruneTreeString(tree, parent_op = None):
271
+ """Return the expression form of a tree returned by pruneStack
272
+
273
+ - tree - the tree
274
+ - parent_op - the operator of the parent, used to parenthesize
275
+ mixed operators"""
276
+
277
+ if isinstance(tree, str):
278
+ return tree
279
+
280
+ op, lhs, rhs = tree
281
+ expr = f'{pruneTreeString(lhs, op)}{op}{pruneTreeString(rhs, op)}'
282
+ if parent_op is not None and parent_op != op:
283
+ return f'({expr})'
284
+ return expr
285
+
286
+ def pruneDependency(dependency, isSupported):
287
+ """Return an API dependency expression with the versions and extensions
288
+ which are not supported removed, so only alternatives which can apply
289
+ remain. The expression is returned unchanged if all of its names are
290
+ supported, and None if it cannot be satisfied.
291
+
292
+ - dependency - the expression
293
+ - isSupported - function taking a version or extension name string and
294
+ returning True or False if that name is supported or not."""
295
+
296
+ if all(isSupported(name) for name in dependencyNames(dependency)):
297
+ return dependency
298
+
299
+ global exprStack
300
+ exprStack = []
301
+ dependencyBNF().parse_string(dependency, parse_all=True)
302
+ tree = pruneStack(exprStack[:], isSupported)
303
+ if tree is None:
304
+ return None
305
+ return pruneTreeString(tree)
306
+
232
307
  def evalDependencyLanguage(stack, leafMarkup, opMarkup, parenthesize, root, parent_op = None):
233
308
  """Evaluate an expression stack, returning an English equivalent
234
309
 
@@ -685,6 +685,19 @@ class Registry:
685
685
 
686
686
  return None
687
687
 
688
+ def isElementRequired(self, name, dictionary, default=False):
689
+ """Return whether a type / enum / command is required for the API
690
+ being generated.
691
+
692
+ - name - name of type / enum / command
693
+ - dictionary - self.{type|enum|cmd}dict
694
+ - default - value to return if `name` is not in the dictionary"""
695
+
696
+ info = self.lookupElementInfo(name, dictionary)
697
+ if info is None:
698
+ return default
699
+ return info.required
700
+
688
701
  def breakOnName(self, regexp):
689
702
  """Specify a feature name regexp to break on when generating features."""
690
703
  self.breakPat = re.compile(regexp)
@@ -1331,6 +1344,38 @@ class Registry:
1331
1344
 
1332
1345
  return False
1333
1346
 
1347
+ def isDependencyNameSupported(self, name):
1348
+ """Return True if a version or extension name used in a depends
1349
+ expression is part of the API being generated.
1350
+
1351
+ - name - name of a version or extension"""
1352
+
1353
+ # Treat genFeatures and removedExtensionNames as supported (extensions
1354
+ # moved to platform/beta headers still count so their enum values stay
1355
+ # in the core header).
1356
+ # For VulkanSC, do not treat VK_VERSION_1_3 and VK_VERSION_1_4 as
1357
+ # supported: Vulkan SC 1.0 does not include those versions
1358
+ # so require blocks that depend on them must be excluded for vulkansc.
1359
+ # TODO - remove explicit check once !7794 (or equivalent) is merged
1360
+ if getattr(self.genOpts, 'apiname', None) == 'vulkansc' and name in (
1361
+ 'VK_VERSION_1_3', 'VK_VERSION_1_4'):
1362
+ return False
1363
+ return (name in self.genFeatures or
1364
+ name in getattr(self, 'removedExtensionNames', set()))
1365
+
1366
+ def isDependencyNameInAPI(self, name):
1367
+ """Return True if a name used in a depends expression is part of the
1368
+ API being generated, for use when deciding whether to mention it.
1369
+ Unlike isDependencyNameSupported this also accepts the
1370
+ `struct::feature` names which can appear in an expression, which are
1371
+ part of the API if the struct is.
1372
+
1373
+ - name - name of a version, extension or `struct::feature`"""
1374
+
1375
+ if '::' in name:
1376
+ return self.isElementRequired(name.split('::')[0], self.typedict, default=True)
1377
+ return self.isDependencyNameSupported(name)
1378
+
1334
1379
  def requireDependsSatisfied(self, require):
1335
1380
  """Return True if the require element has no depends attribute, or if the
1336
1381
  depends boolean expression evaluates to true.
@@ -1340,20 +1385,7 @@ class Registry:
1340
1385
  if not depends or not depends.strip():
1341
1386
  return True
1342
1387
  try:
1343
- # Treat genFeatures and removedExtensionNames as satisfied (extensions
1344
- # moved to platform/beta headers still count so their enum values stay
1345
- # in the core header).
1346
- # For VulkanSC, do not treat VK_VERSION_1_3 and VK_VERSION_1_4 as
1347
- # satisfying depends: Vulkan SC 1.0 does not include those versions
1348
- # so require blocks that depend on them must be excluded for vulkansc.
1349
- # TODO - remove explicit check once !7794 (or equivalent) is merged
1350
- def is_supported(name):
1351
- if getattr(self.genOpts, 'apiname', None) == 'vulkansc' and name in (
1352
- 'VK_VERSION_1_3', 'VK_VERSION_1_4'):
1353
- return False
1354
- return (name in self.genFeatures or
1355
- name in getattr(self, 'removedExtensionNames', set()))
1356
- return evaluateDependency(depends, is_supported)
1388
+ return evaluateDependency(depends, self.isDependencyNameSupported)
1357
1389
  except ParseException as e:
1358
1390
  self.gen.logMsg('warn', 'requireDependsSatisfied: parse error', str(e), 'in depends="', depends, '"')
1359
1391
  return False
@@ -189,7 +189,7 @@ branch of the member gitlab server.
189
189
  #define <name>VKSC_API_VERSION_1_0</name> <type>VK_MAKE_API_VERSION</type>(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0</type>
190
190
 
191
191
  <type api="vulkan,vulkanbase" category="define">// Version of this file
192
- #define <name>VK_HEADER_VERSION</name> 366</type>
192
+ #define <name>VK_HEADER_VERSION</name> 367</type>
193
193
  <type api="vulkan,vulkanbase" category="define" requires="VK_HEADER_VERSION">// Complete version of this file
194
194
  #define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_API_VERSION</type>(0, 1, 4, VK_HEADER_VERSION)</type>
195
195
  <type api="vulkansc" category="define">// Version of this file
@@ -1292,7 +1292,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
1292
1292
  <member optional="true"><type>VkDeviceQueueCreateFlags</type> <name>flags</name></member>
1293
1293
  <member><type>uint32_t</type> <name>queueFamilyIndex</name></member>
1294
1294
  <member><type>uint32_t</type> <name>queueCount</name></member>
1295
- <member len="queueCount">const <type>float</type>* <name>pQueuePriorities</name></member>
1295
+ <member optional="true" len="queueCount">const <type>float</type>* <name>pQueuePriorities</name></member>
1296
1296
  </type>
1297
1297
  <type category="struct" name="VkDeviceCreateInfo">
1298
1298
  <member values="VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"><type>VkStructureType</type> <name>sType</name></member>
@@ -4443,6 +4443,16 @@ typedef void* <name>MTLSharedEvent_id</name>;
4443
4443
  <member optional="true"><type>void</type>* <name>pNext</name></member>
4444
4444
  <member><type>VkBool32</type> <name>maintenance10</name></member>
4445
4445
  </type>
4446
+ <type category="struct" name="VkPhysicalDeviceMaintenance12PropertiesKHR" returnedonly="true" structextends="VkPhysicalDeviceProperties2" requiredlimittype="true">
4447
+ <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_12_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
4448
+ <member optional="true"><type>void</type>* <name>pNext</name></member>
4449
+ <member limittype="max"><type>uint32_t</type> <name>maxInputAttachmentIndex</name></member>
4450
+ </type>
4451
+ <type category="struct" name="VkPhysicalDeviceMaintenance12FeaturesKHR" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
4452
+ <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_12_FEATURES_KHR"><type>VkStructureType</type> <name>sType</name></member>
4453
+ <member optional="true"><type>void</type>* <name>pNext</name></member>
4454
+ <member><type>VkBool32</type> <name>maintenance12</name></member>
4455
+ </type>
4446
4456
  <type category="struct" name="VkQueueFamilyOwnershipTransferPropertiesKHR" returnedonly="true" structextends="VkQueueFamilyProperties2" requiredlimittype="true">
4447
4457
  <member values="VK_STRUCTURE_TYPE_QUEUE_FAMILY_OWNERSHIP_TRANSFER_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
4448
4458
  <member optional="true"><type>void</type>* <name>pNext</name></member>
@@ -13540,6 +13550,7 @@ typedef void* <name>MTLSharedEvent_id</name>;
13540
13550
  <enum value="32" name="VK_DRIVER_ID_APEX" comment="Apex Compute" />
13541
13551
  <enum value="33" name="VK_DRIVER_ID_NIKKI" comment="nikki Vulkan-on-WebGPU implementation" />
13542
13552
  <enum value="34" name="VK_DRIVER_ID_MOMOTEN" comment="momoten Vulkan-on-OpenCL implementation" />
13553
+ <enum value="35" name="VK_DRIVER_ID_AURORA_BOREALIS" comment="Aurora Silicon" />
13543
13554
  </enums>
13544
13555
  <enums name="VkConditionalRenderingFlagBitsEXT" type="bitmask">
13545
13556
  <enum bitpos="0" name="VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT" />
@@ -18921,7 +18932,7 @@ endif::VK_KHR_internally_synchronized_queues[]
18921
18932
  <proto><type>VkResult</type> <name>vkGetDeviceFaultReportsKHR</name></proto>
18922
18933
  <param><type>VkDevice</type> <name>device</name></param>
18923
18934
  <param><type>uint64_t</type> <name>timeout</name></param>
18924
- <param><type>uint32_t</type>* <name>pFaultCounts</name></param>
18935
+ <param optional="false,true"><type>uint32_t</type>* <name>pFaultCounts</name></param>
18925
18936
  <param optional="true" len="pFaultCounts"><type>VkDeviceFaultInfoKHR</type>* <name>pFaultInfo</name></param>
18926
18937
  </command>
18927
18938
  <command successcodes="VK_SUCCESS,VK_INCOMPLETE" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_NOT_ENOUGH_SPACE_KHR,VK_ERROR_UNKNOWN,VK_ERROR_VALIDATION_FAILED">
@@ -28745,6 +28756,7 @@ endif::VK_KHR_internally_synchronized_queues[]
28745
28756
  <require>
28746
28757
  <enum value="0" name="VK_COREAVI_EXTENSION_447_SPEC_VERSION" />
28747
28758
  <enum value="&quot;VK_COREAVI_extension_447&quot;" name="VK_COREAVI_EXTENSION_447_EXTENSION_NAME" />
28759
+ <enum bitpos="8" extends="VkBufferCreateFlagBits" name="VK_BUFFER_CREATE_RESERVED_8_BIT_LYNX" />
28748
28760
  </require>
28749
28761
  </extension>
28750
28762
  <extension name="VK_SEC_extension_448" number="448" author="SEC" contact="Ralph Potter gitlab:@r_potter" supported="disabled">
@@ -31813,7 +31825,6 @@ endif::VK_KHR_internally_synchronized_queues[]
31813
31825
  <enum value="&quot;VK_EXT_extension_641&quot;" name="VK_EXT_EXTENSION_641_EXTENSION_NAME" />
31814
31826
  <enum bitpos="45" extends="VkPipelineCreateFlagBits2" name="VK_PIPELINE_CREATE_2_RESERVED_45_BIT_EXT" />
31815
31827
  <enum bitpos="18" extends="VkBufferUsageFlagBits2" name="VK_BUFFER_USAGE_2_RESERVED_18_BIT_EXT" />
31816
- <enum bitpos="30" extends="VkBufferUsageFlagBits2" name="VK_BUFFER_USAGE_2_RESERVED_30_BIT_EXT" />
31817
31828
  <enum bitpos="15" extends="VkBuildAccelerationStructureFlagBitsKHR" name="VK_BUILD_ACCELERATION_STRUCTURE_RESERVED_15_BIT_EXT" />
31818
31829
  </require>
31819
31830
  </extension>
@@ -32392,10 +32403,15 @@ endif::VK_KHR_internally_synchronized_queues[]
32392
32403
  <enum value="&quot;VK_EXT_extension_680&quot;" name="VK_EXT_EXTENSION_680_EXTENSION_NAME" />
32393
32404
  </require>
32394
32405
  </extension>
32395
- <extension name="VK_KHR_extension_681" number="681" type="device" author="KHR" contact="Mike Blumenkrantz @zmike" supported="disabled">
32406
+ <extension name="VK_KHR_maintenance12" number="681" type="device" depends="VK_KHR_get_physical_device_properties2,VK_VERSION_1_1" author="KHR" contact="Mike Blumenkrantz @zmike" supported="vulkan" ratified="vulkan">
32396
32407
  <require>
32397
- <enum value="0" name="VK_KHR_EXTENSION_681_SPEC_VERSION" />
32398
- <enum value="&quot;VK_KHR_extension_681&quot;" name="VK_KHR_EXTENSION_681_EXTENSION_NAME" />
32408
+ <enum value="1" name="VK_KHR_MAINTENANCE_12_SPEC_VERSION" />
32409
+ <enum value="&quot;VK_KHR_maintenance12&quot;" name="VK_KHR_MAINTENANCE_12_EXTENSION_NAME" />
32410
+ <enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_12_FEATURES_KHR" />
32411
+ <enum offset="1" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_12_PROPERTIES_KHR" />
32412
+ <type name="VkPhysicalDeviceMaintenance12FeaturesKHR" />
32413
+ <feature name="maintenance12" struct="VkPhysicalDeviceMaintenance12FeaturesKHR" />
32414
+ <type name="VkPhysicalDeviceMaintenance12PropertiesKHR" />
32399
32415
  </require>
32400
32416
  </extension>
32401
32417
  <extension name="VK_VALVE_extension_682" number="682" type="device" author="VALVE" contact="Hans-Kristian Arntzen @HansKristian-Work" supported="disabled">
@@ -32661,6 +32677,48 @@ endif::VK_KHR_internally_synchronized_queues[]
32661
32677
  <feature name="hdrSmpteSt209450" struct="VkPhysicalDeviceHdrSmpteSt209450FeaturesGOOGLE" />
32662
32678
  </require>
32663
32679
  </extension>
32680
+ <extension name="VK_ARM_extension_720" number="720" author="ARM" contact="Kevin Petit @kpet" supported="disabled">
32681
+ <require>
32682
+ <enum value="0" name="VK_ARM_EXTENSION_720_SPEC_VERSION" />
32683
+ <enum value="&quot;VK_ARM_extension_720&quot;" name="VK_ARM_EXTENSION_720_EXTENSION_NAME" />
32684
+ </require>
32685
+ </extension>
32686
+ <extension name="VK_LYNX_extension_721" number="721" author="LYNX" contact="Aidan Fabius @afabius" supported="disabled">
32687
+ <require>
32688
+ <enum value="0" name="VK_LYNX_EXTENSION_721_SPEC_VERSION" />
32689
+ <enum value="&quot;VK_LYNX_extension_721&quot;" name="VK_LYNX_EXTENSION_721_EXTENSION_NAME" />
32690
+ </require>
32691
+ </extension>
32692
+ <extension name="VK_LYNX_extension_722" number="722" author="LYNX" contact="Aidan Fabius @afabius" supported="disabled">
32693
+ <require>
32694
+ <enum value="0" name="VK_LYNX_EXTENSION_722_SPEC_VERSION" />
32695
+ <enum value="&quot;VK_LYNX_extension_722&quot;" name="VK_LYNX_EXTENSION_722_EXTENSION_NAME" />
32696
+ </require>
32697
+ </extension>
32698
+ <extension name="VK_LYNX_extension_723" number="723" author="LYNX" contact="Aidan Fabius @afabius" supported="disabled">
32699
+ <require>
32700
+ <enum value="0" name="VK_LYNX_EXTENSION_723_SPEC_VERSION" />
32701
+ <enum value="&quot;VK_LYNX_extension_723&quot;" name="VK_LYNX_EXTENSION_723_EXTENSION_NAME" />
32702
+ </require>
32703
+ </extension>
32704
+ <extension name="VK_LYNX_extension_724" number="724" author="LYNX" contact="Aidan Fabius @afabius" supported="disabled">
32705
+ <require>
32706
+ <enum value="0" name="VK_LYNX_EXTENSION_724_SPEC_VERSION" />
32707
+ <enum value="&quot;VK_LYNX_extension_724&quot;" name="VK_LYNX_EXTENSION_724_EXTENSION_NAME" />
32708
+ </require>
32709
+ </extension>
32710
+ <extension name="VK_LYNX_extension_725" number="725" author="LYNX" contact="Aidan Fabius @afabius" supported="disabled">
32711
+ <require>
32712
+ <enum value="0" name="VK_LYNX_EXTENSION_725_SPEC_VERSION" />
32713
+ <enum value="&quot;VK_LYNX_extension_725&quot;" name="VK_LYNX_EXTENSION_725_EXTENSION_NAME" />
32714
+ </require>
32715
+ </extension>
32716
+ <extension name="VK_KHR_extension_726" number="726" author="KHR" contact="Mike Blumenkrantz @zmike" supported="disabled">
32717
+ <require>
32718
+ <enum value="0" name="VK_KHR_EXTENSION_726_SPEC_VERSION" />
32719
+ <enum value="&quot;VK_KHR_extension_726&quot;" name="VK_KHR_EXTENSION_726_EXTENSION_NAME" />
32720
+ </require>
32721
+ </extension>
32664
32722
  </extensions>
32665
32723
  <formats>
32666
32724
  <format name="VK_FORMAT_R4G4_UNORM_PACK8" class="8-bit" blockSize="1" texelsPerBlock="1" packed="8">
@@ -34323,7 +34381,7 @@ endif::VK_KHR_internally_synchronized_queues[]
34323
34381
  <dynamicstate name="primitiveRestartEnable" shaderstage="VK_SHADER_STAGE_VERTEX_BIT" pipelinesubstate="Vertex Input">
34324
34382
  <dynamicstatecmd name="vkCmdSetPrimitiveRestartEnable" pipeline="VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE" />
34325
34383
  </dynamicstate>
34326
- <dynamicstate name="provokingVertexMode" shaderstage="VK_SHADER_STAGE_VERTEX_BIT" pipelinesubstate="Pre-Rasterization Shader" requiresrasterization="true">
34384
+ <dynamicstate name="provokingVertexMode" shaderstage="VK_SHADER_STAGE_ALL" pipelinesubstate="Pre-Rasterization Shader" requiresrasterization="true">
34327
34385
  <dynamicstatecmd name="vkCmdSetProvokingVertexModeEXT" pipeline="VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT" />
34328
34386
  <enable extension="VK_EXT_provoking_vertex" />
34329
34387
  </dynamicstate>
@@ -34464,7 +34522,7 @@ endif::VK_KHR_internally_synchronized_queues[]
34464
34522
  <dynamicstatecmd name="vkCmdSetLineWidth" pipeline="VK_DYNAMIC_STATE_LINE_WIDTH" />
34465
34523
  <statecondition special="lineTopology" />
34466
34524
  </dynamicstate>
34467
- <dynamicstate name="lineStippleEnable" shaderstage="VK_SHADER_STAGE_VERTEX_BIT" pipelinesubstate="Pre-Rasterization Shader" requiresrasterization="true">
34525
+ <dynamicstate name="lineStippleEnable" shaderstage="VK_SHADER_STAGE_ALL" pipelinesubstate="Pre-Rasterization Shader" requiresrasterization="true">
34468
34526
  <dynamicstatecmd name="vkCmdSetLineStippleEnableEXT" pipeline="VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT" />
34469
34527
  <enable struct="VkPhysicalDeviceLineRasterizationFeaturesKHR" feature="stippledRectangularLines" requires="VK_KHR_line_rasterization" />
34470
34528
  <enable struct="VkPhysicalDeviceLineRasterizationFeaturesKHR" feature="stippledBresenhamLines" requires="VK_KHR_line_rasterization" />
@@ -34478,7 +34536,7 @@ endif::VK_KHR_internally_synchronized_queues[]
34478
34536
  <enable struct="VkPhysicalDeviceLineRasterizationFeaturesKHR" feature="stippledSmoothLines" requires="VK_KHR_line_rasterization" />
34479
34537
  <statecondition state="lineStippleEnable" special="stippledLineTopology" />
34480
34538
  </dynamicstate>
34481
- <dynamicstate name="lineRasterizationMode" shaderstage="VK_SHADER_STAGE_VERTEX_BIT" pipelinesubstate="Pre-Rasterization Shader" requiresrasterization="true">
34539
+ <dynamicstate name="lineRasterizationMode" shaderstage="VK_SHADER_STAGE_ALL" pipelinesubstate="Pre-Rasterization Shader" requiresrasterization="true">
34482
34540
  <dynamicstatecmd name="vkCmdSetLineRasterizationModeEXT" pipeline="VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT" />
34483
34541
  <enable struct="VkPhysicalDeviceLineRasterizationFeaturesKHR" feature="stippledRectangularLines" requires="VK_KHR_line_rasterization" />
34484
34542
  <enable struct="VkPhysicalDeviceLineRasterizationFeaturesKHR" feature="stippledBresenhamLines" requires="VK_KHR_line_rasterization" />
@@ -34505,10 +34563,10 @@ endif::VK_KHR_internally_synchronized_queues[]
34505
34563
  <dynamicstate name="sampleMask" shaderstage="VK_SHADER_STAGE_ALL" pipelinesubstate="Fragment Shader,Fragment Output" requiresrasterization="true">
34506
34564
  <dynamicstatecmd name="vkCmdSetSampleMaskEXT" pipeline="VK_DYNAMIC_STATE_SAMPLE_MASK_EXT" />
34507
34565
  </dynamicstate>
34508
- <dynamicstate name="alphaToCoverageEnable" shaderstage="VK_SHADER_STAGE_ALL" pipelinesubstate="Fragment Shader,Fragment Output" requiresrasterization="true">
34566
+ <dynamicstate name="alphaToCoverageEnable" shaderstage="VK_SHADER_STAGE_FRAGMENT_BIT" pipelinesubstate="Fragment Shader,Fragment Output" requiresrasterization="true">
34509
34567
  <dynamicstatecmd name="vkCmdSetAlphaToCoverageEnableEXT" pipeline="VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT" />
34510
34568
  </dynamicstate>
34511
- <dynamicstate name="alphaToOneEnable" shaderstage="VK_SHADER_STAGE_ALL" pipelinesubstate="Fragment Shader,Fragment Output" requiresrasterization="true">
34569
+ <dynamicstate name="alphaToOneEnable" shaderstage="VK_SHADER_STAGE_FRAGMENT_BIT" pipelinesubstate="Fragment Shader,Fragment Output" requiresrasterization="true">
34512
34570
  <dynamicstatecmd name="vkCmdSetAlphaToOneEnableEXT" pipeline="VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT" />
34513
34571
  <enable struct="VkPhysicalDeviceFeatures" feature="alphaToOne" requires="VK_VERSION_1_0" />
34514
34572
  </dynamicstate>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: vulkan-object
3
- Version: 1.4.366
3
+ Version: 1.4.367
4
4
  Summary: An easy-to-use Python wrapper for the Vulkan API registry.
5
5
  Author-email: Spencer Fricke <spencer@lunarg.com>
6
6
  Classifier: Programming Language :: Python :: 3
File without changes