Commit graph

54 commits

Author SHA1 Message Date
Mike Schuchardt
524f8910d0 build: Update to header 1.3.274
- Update known-good
- Generate source
2023-12-19 10:13:57 -08:00
Mike Schuchardt
b89f4b8415 build: Update to header 1.3.273
- Update known-good
- Generate source
2023-12-08 11:02:28 -08:00
Mike Schuchardt
2feac58733 build: Update to header 1.3.272
- Update known-good
- Generate source
- Remove vk_layer_settings_ext.h
- Change all usage of VkLayerSettingEXT::count to use the new name
  valueCount from the public header.
2023-12-02 13:11:22 +01:00
Mike Schuchardt
1fb77ad1d4 build: Update to header 1.3.271
- Update known-good
- Generate source
2023-11-27 12:46:40 -08:00
Juan Ramos
678ce607a0 ci: Add clang-format to CI
This also removes the extra .clang-format in the include directory

closes 
2023-11-10 14:36:43 -07:00
Mike Schuchardt
daeab89bb9 build: Update to header 1.3.270
- Update known-good
- Generate source
2023-11-10 11:10:25 -07:00
Mike Schuchardt
b7599c21a6 build: Update to header 1.3.269
- Update known-good
- Generate source
2023-10-20 14:29:22 -07:00
Charles Giessen
dcfce25b43 Remove consecutive platform defines
Generated code must macro-guard platform specific code, but did it in a
naive fashion where consecutive guards for the same platform repeated the
macro. With the help of PlatformGuardHelper, the code generation will elide
redundant macro guards.
2023-10-18 18:44:30 -06:00
Mike Schuchardt
9e088360b5 build: Update to header 1.3.267
- Update known-good
- Generate source
2023-10-06 11:07:36 -07:00
Charles Giessen
85f06aeb61 util: Fix vku::GetObjectType() broken for 32 bit builds
Non Dispatchable handles are not typed in 32 bit builds, so the
vku::GetObjectHandle() helper fails to compile. The solution is to just
not define the helper in 32 bit builds.
2023-10-05 11:47:23 -06:00
Mike Schuchardt
f528b23aec Make GetObjectType specializations inline
Avoid multiple definition compiler error
2023-10-04 13:53:48 -07:00
unknown
cf011e717a Add GetObjectType helper to struct_helper
This utility converst Vulkan handle types to VkObjectType enums, which is used
by the debug utils set name & tag functions.
2023-10-04 11:41:20 -06:00
Juan Ramos
2169a0849e Fix doc for vkuFormatIsXChromaSubsampled
Now the documentation matches the implementation.
2023-10-01 14:49:40 -06:00
Mike Schuchardt
57a5103a04 build: Update to header 1.3.266
- Update known-good
- Generate source
2023-09-29 10:07:18 -06:00
James Price
d3e6eb65dd Remove extra semicolon after member definition
Some compilers complain about this.
2023-09-21 15:28:08 -06:00
Christophe
bc3f1e9771 layer: Add multiple VkLayerSettingsCreateInfo support 2023-09-20 19:13:47 +02:00
Juan Ramos
fefcc37fc1 Ensure consistent usage of vku in PUBLIC header files
closes 
2023-09-20 08:34:34 -06:00
unknown
6774c9b24b util: Add vk_struct_helper.hpp
Move the vk_typemap_helper.h file in Vulkan-ValidationLayers over to this
repo with a different name to reflect the use of it

Changes from that include:
 * Rename the functions to be more obvious as to what they do
 * Placing them in the `vku` namespace
 * Adding the `InitStructHelper` class which deduces the type based on the
   variable that is being initialized
 * Compiler error if there is no corresponding sType
2023-09-19 10:10:31 -06:00
Christophe
dc1acf9e37 layer: Add env var prefix override for back compatibility 2023-09-19 16:36:44 +02:00
Christophe
e015dcd6b4 layer: Add CPP version of GetUnknownSettings 2023-09-14 17:10:12 +02:00
Juan Ramos
1c6d92cccf Use vku prefix for vk_dispatch_table.h interface 2023-09-13 16:49:54 -06:00
Christophe
b78ed1a5f0 layer: Add features to list unknown settings 2023-09-13 22:10:26 +02:00
unknown
c903525915 src: Add vk_format_utils.h to UtilityHeaders
The library originates from Vulkan-ValidationLayers, but is being moved
into this repo to make it easier for others to use it.

The library has also been modified to be header only and C compatible,
which allows more developers to be able to use it. This does require some
changes, but only affects the vkuFormatElementSize and vkuFormatTexelSize
functions which used default parameters. Two new functions,
vkuFormatElementSizeWithAspect and vkuFormatTexelSizeWithAspect have been
added to handle the non-default image aspect case (the default was COLOR_BIT).

Renaming was done using the following convention:
* public header files begin with `vk_`
* enums begin with VKU_FORMAT_
* functions begin with vku
2023-09-11 12:48:03 -06:00
Mike Schuchardt
2f464cfc89 build: Update to header 1.3.264
- Update known-good
- Generate source
2023-09-11 09:14:41 -07:00
Juan Ramos
6710b67cde Ensure all header files shipped have the vk_ prefix
CI will fail now if we ship a .h / .hpp file that doesn't use
the correct prefix.

I also documented the precedent for this prefix and the existing
integration testing.
2023-09-08 12:47:09 -06:00
Mike Schuchardt
f75f26a0c8 build: Update to header 1.3.263
- Update known-good
- Generate source
2023-09-05 14:12:36 -07:00
Christophe
33e9ad7116 layer: remove VK_LAYER_SETTING_TYPE_FRAMESET_EXT
After VK_EXT_layer_settings spec review, this new type
was judge unnecessary because it could be express by
three uint32. However, it still remains useful for the
layer settings library to correctly interpret formated
strings that represent "framesets".
2023-08-30 12:40:40 +02:00
unknown
b0712dfdb1 headers: Fix dispatch table formatting
The code did not follow the provided clang-format file, which causes
conflict when a developer runs clang-format on the repo. This commit fixes
the generator so that the output is what clang-format would generate.
One issue is that clang-format's ColumnLimit will wrap long lines, and is
very difficult to replicate in python code without excessive changes. The
chosen solution is to use a custom clang-format file for the Utilities
folder which ignores the ColumnLimit.
2023-08-25 14:35:36 -06:00
Mike Schuchardt
814391e074 build: Update to header 1.3.262
- Update known-good
- Generate source
2023-08-25 12:43:40 -07:00
Charles Giessen
2bd0e0d438 util: Fixup and add Dispatch Table header
Fixes the vk_layer_dispatch_table.h header file so that they can be used
in other projects. The contents of this header and
 vk_dispatch_table_helper.h have been moved into a new header
 vul_dispatch_table.h.

The structs VulDeviceDispatchTable and VulInstanceDispatchTable
struct contain function pointers for the device and instance, respectively.

The functions vul_init_device_dispatch_table and
vul_init_instance_dispatch_table fill out the aforementioned structs,
making the task of setting up the disptach table in a layer much simpler.
2023-08-23 15:07:01 -06:00
Juan Ramos
8ea7803544 Remove clang-tidy comments from vk_enum_string_helper.h
Not needed. They only made sense in the context of VVL.
2023-08-23 12:31:35 -06:00
Christophe
2396306278 layer: Use a different sType than the private EXT_layer_settings 2023-08-23 15:09:32 +02:00
Juan Ramos
02d552db0c tests: Ensure vk_enum_string_helper.h is C compatible
Added ifdef checks for backcompat

Intended to properly address these issue(s):
- https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/3233
- https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/1211
2023-08-22 15:13:44 -06:00
Christophe
d414e86858 layer: Fix API naming to follow convention 2023-08-21 15:49:04 +02:00
Christophe
9950e5ca49 layer: clean up API 2023-08-18 14:44:26 +02:00
Christophe
33e1bd1c97 layer: Disable layer settings registry 2023-08-17 17:20:38 +02:00
Christophe
c8a4566f89 layer: Fix vkEnumerateInstanceLayerSettingsEXT on Windows C.I. 2023-08-15 20:11:29 +02:00
Christophe
ed2d4d1250 layer: Add minimum setting reflection 2023-08-15 19:04:52 +02:00
Christophe
87b77bc639 layer: Improve API consistency 2023-08-09 16:12:49 +02:00
Mike Schuchardt
430013c64e build: Update to header 1.3.261
- Update known-good
- Generate source
2023-08-04 17:45:21 -07:00
Mike Schuchardt
a191ca0720 build: Update to header 1.3.260
- Update known-good
- Generate source
2023-08-02 15:07:01 +02:00
Juan Ramos
93ceaff579 Add REUSE to CI
Ensures proper copyright for the repo
2023-07-25 16:11:18 -06:00
Juan Ramos
596e7cf6ea build: Remove invalid generated files
vk_dispatch_table_helper.h and vk_layer_dispatch_table.h don't
compile currently.

Added minimal compilation testing for vk_enum_string_helper.h
2023-07-21 11:51:12 -06:00
Mike Schuchardt
3422e694ed build: Update to header 1.3.258
- Update known-good
- Generate source
2023-07-21 11:01:02 -06:00
spencer-lunarg
d8719df037 scripts: Add initial codegen scripts 2023-07-17 09:54:09 -06:00
Christophe
c0525368d7 layer: Add CPP layer settings API 2023-06-27 15:03:28 +02:00
Christophe
f714feb953 Expose FindLayerSettingsCreateInfo as a layer developer API 2023-06-26 15:43:47 +02:00
Christophe
c9f8cebf72 layer: add layer settings set to handle multiple instances 2023-06-08 07:39:19 +02:00
Christophe
335e80ff1c Update include/vulkan/layer/vk_layer_settings_ext.h
Co-authored-by: Juan Ramos <114601453+juan-lunarg@users.noreply.github.com>
2023-05-24 22:35:24 +02:00
Christophe
461d321fc7 layer: Avoid conflict with validation layer setting extension
- We need to use a different number and name to avoid conflict with the old extension
- Improve vlInitLayerSettings API to map GetProperties approach
- Settings may have no value
2023-05-24 22:35:24 +02:00