Skip to content

Commit

Permalink
Update generated bindings
Browse files Browse the repository at this point in the history
  • Loading branch information
KyleMayes committed Sep 2, 2024
1 parent 2cf7ebe commit 9cbf42f
Show file tree
Hide file tree
Showing 14 changed files with 1,739 additions and 27 deletions.
2 changes: 1 addition & 1 deletion .commits
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
KhronosGroup/Vulkan-Docs/main/xml/vk.xml => 306edf6a920ae372d5134424fcc9c009c31e0760
KhronosGroup/Vulkan-Docs/main/xml/vk.xml => 8e435deb15124bbf9a7e3340e6cc7975999ed5c5
KhronosGroup/Vulkan-Headers/main/include/vk_video => 5a5c9a643484d888873e32c5d7d484fae8e71d3d
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
## [0.26.0] - UNRELEASED

### Bindings Updates
- [Add discussion of processing frameworks being responsible for all defined attributes and tags (#2417)](https://github.com/KhronosGroup/Vulkan-Docs/commit/58d38a51ca9d1b4132af54c88b89481e7fe27dc9)
- [Reserve extension #604 (#2419)](https://github.com/KhronosGroup/Vulkan-Docs/commit/55255e28e68016d9861cb134dcc9db9255670a5d)
- [August 23, 2024 Vulkan 1.3.294 spec update](https://github.com/KhronosGroup/Vulkan-Docs/commit/fb9f45c5ee8f4e8cd6f2b19eeb751fd305773a67)
- [Missing require for pipeline binary key size - #2422 (#2423)](https://github.com/KhronosGroup/Vulkan-Docs/commit/2eaf6b23921b1a597371d0646e3202a684fb973e)
- [minor wording change to avoid ambiguity in 'the act of waiting'. (#2418)](https://github.com/KhronosGroup/Vulkan-Docs/commit/ccd06598b7745aca51ea45c27055f5fe9573114d)
- [August 30, 2024 Vulkan 1.3.295 spec update](https://github.com/KhronosGroup/Vulkan-Docs/commit/8e435deb15124bbf9a7e3340e6cc7975999ed5c5)

## [0.25.0] - 2024-08-22

### Changed
Expand Down
1 change: 1 addition & 0 deletions vulkanalia-sys/src/bitmasks.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1374,6 +1374,7 @@ bitflags! {
const RAY_TRACING_DISPLACEMENT_MICROMAP_NV = 1 << 28;
const DESCRIPTOR_BUFFER_EXT = 1 << 29;
const PROTECTED_ACCESS_ONLY_EXT = 1 << 30;
const CAPTURE_DATA = 1 << 31;
const ENABLE_LEGACY_DITHERING_EXT = 1 << 34;
}
}
Expand Down
38 changes: 38 additions & 0 deletions vulkanalia-sys/src/commands.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2195,6 +2195,14 @@ pub type PFN_vkCreateOpticalFlowSessionNV = unsafe extern "system" fn(
_session: *mut OpticalFlowSessionNV,
) -> Result;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreatePipelineBinariesKHR.html>
pub type PFN_vkCreatePipelineBinariesKHR = unsafe extern "system" fn(
_device: Device,
_create_info: *const PipelineBinaryCreateInfoKHR,
_allocator: *const AllocationCallbacks,
_binaries: *mut PipelineBinaryHandlesInfoKHR,
) -> Result;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreatePipelineCache.html>
pub type PFN_vkCreatePipelineCache = unsafe extern "system" fn(
_device: Device,
Expand Down Expand Up @@ -2633,6 +2641,13 @@ pub type PFN_vkDestroyPipeline = unsafe extern "system" fn(
_allocator: *const AllocationCallbacks,
);

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyPipelineBinaryKHR.html>
pub type PFN_vkDestroyPipelineBinaryKHR = unsafe extern "system" fn(
_device: Device,
_pipeline_binary: PipelineBinaryKHR,
_allocator: *const AllocationCallbacks,
);

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyPipelineCache.html>
pub type PFN_vkDestroyPipelineCache = unsafe extern "system" fn(
_device: Device,
Expand Down Expand Up @@ -3932,6 +3947,15 @@ pub type PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR = unsafe extern "syst
_visual_id: VisualID,
) -> Bool32;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelineBinaryDataKHR.html>
pub type PFN_vkGetPipelineBinaryDataKHR = unsafe extern "system" fn(
_device: Device,
_info: *const PipelineBinaryDataInfoKHR,
_pipeline_binary_key: *mut PipelineBinaryKeyKHR,
_pipeline_binary_data_size: *mut usize,
_pipeline_binary_data: *mut c_void,
) -> Result;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelineCacheData.html>
pub type PFN_vkGetPipelineCacheData = unsafe extern "system" fn(
_device: Device,
Expand Down Expand Up @@ -3978,6 +4002,13 @@ pub type PFN_vkGetPipelineIndirectMemoryRequirementsNV = unsafe extern "system"
_memory_requirements: *mut MemoryRequirements2,
);

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelineKeyKHR.html>
pub type PFN_vkGetPipelineKeyKHR = unsafe extern "system" fn(
_device: Device,
_pipeline_create_info: *const PipelineCreateInfoKHR,
_pipeline_key: *mut PipelineBinaryKeyKHR,
) -> Result;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelinePropertiesEXT.html>
pub type PFN_vkGetPipelinePropertiesEXT = unsafe extern "system" fn(
_device: Device,
Expand Down Expand Up @@ -4381,6 +4412,13 @@ pub type PFN_vkRegisterDisplayEventEXT = unsafe extern "system" fn(
_fence: *mut Fence,
) -> Result;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkReleaseCapturedPipelineDataKHR.html>
pub type PFN_vkReleaseCapturedPipelineDataKHR = unsafe extern "system" fn(
_device: Device,
_info: *const ReleaseCapturedPipelineDataInfoKHR,
_allocator: *const AllocationCallbacks,
) -> Result;

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkReleaseDisplayEXT.html>
pub type PFN_vkReleaseDisplayEXT =
unsafe extern "system" fn(_physical_device: PhysicalDevice, _display: DisplayKHR) -> Result;
Expand Down
1 change: 1 addition & 0 deletions vulkanalia-sys/src/constants.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ pub const MAX_GLOBAL_PRIORITY_SIZE_KHR: usize = 16;
pub const MAX_MEMORY_HEAPS: usize = 16;
pub const MAX_MEMORY_TYPES: usize = 32;
pub const MAX_PHYSICAL_DEVICE_NAME_SIZE: usize = 256;
pub const MAX_PIPELINE_BINARY_KEY_SIZE_KHR: usize = 32;
pub const MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT: usize = 32;
pub const MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR: usize = 7;
pub const QUEUE_FAMILY_EXTERNAL: u32 = !1;
Expand Down
37 changes: 35 additions & 2 deletions vulkanalia-sys/src/enums.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3475,6 +3475,7 @@ impl ObjectType {
pub const MICROMAP_EXT: Self = Self(1000396000);
pub const OPTICAL_FLOW_SESSION_NV: Self = Self(1000464000);
pub const SHADER_EXT: Self = Self(1000482000);
pub const PIPELINE_BINARY_KHR: Self = Self(1000483000);
pub const SEMAPHORE_SCI_SYNC_POOL_NV: Self = Self(1000489000);

/// Constructs an instance of this enum with the supplied underlying value.
Expand Down Expand Up @@ -3544,6 +3545,7 @@ impl fmt::Debug for ObjectType {
1000396000 => write!(f, "MICROMAP_EXT"),
1000464000 => write!(f, "OPTICAL_FLOW_SESSION_NV"),
1000482000 => write!(f, "SHADER_EXT"),
1000483000 => write!(f, "PIPELINE_BINARY_KHR"),
1000489000 => write!(f, "SEMAPHORE_SCI_SYNC_POOL_NV"),
_ => self.0.fmt(f),
}
Expand Down Expand Up @@ -4749,6 +4751,8 @@ impl Result {
pub const ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR: Self = Self(-1000299000);
pub const ERROR_COMPRESSION_EXHAUSTED_EXT: Self = Self(-1000338000);
pub const INCOMPATIBLE_SHADER_BINARY_EXT: Self = Self(1000482000);
pub const PIPELINE_BINARY_MISSING_KHR: Self = Self(1000483000);
pub const ERROR_NOT_ENOUGH_SPACE_KHR: Self = Self(-1000483000);

/// Constructs an instance of this enum with the supplied underlying value.
#[inline]
Expand Down Expand Up @@ -4813,6 +4817,8 @@ impl fmt::Debug for Result {
-1000299000 => write!(f, "ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR"),
-1000338000 => write!(f, "ERROR_COMPRESSION_EXHAUSTED_EXT"),
1000482000 => write!(f, "INCOMPATIBLE_SHADER_BINARY_EXT"),
1000483000 => write!(f, "PIPELINE_BINARY_MISSING_KHR"),
-1000483000 => write!(f, "ERROR_NOT_ENOUGH_SPACE_KHR"),
_ => self.0.fmt(f),
}
}
Expand Down Expand Up @@ -4868,6 +4874,8 @@ impl fmt::Display for Result {
-1000299000 => write!(f, "ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR"),
-1000338000 => write!(f, "ERROR_COMPRESSION_EXHAUSTED_EXT"),
1000482000 => write!(f, "INCOMPATIBLE_SHADER_BINARY_EXT"),
1000483000 => write!(f, "PIPELINE_BINARY_MISSING_KHR"),
-1000483000 => write!(f, "ERROR_NOT_ENOUGH_SPACE_KHR"),
_ => write!(f, "unknown Vulkan result (code = {})", self.0),
}
}
Expand Down Expand Up @@ -5935,7 +5943,6 @@ impl StructureType {
pub const DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD: Self = Self(1000189000);
pub const PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: Self = Self(1000190000);
pub const PRESENT_FRAME_TOKEN_GGP: Self = Self(1000191000);
pub const PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV: Self = Self(1000201000);
pub const PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV: Self = Self(1000202000);
pub const PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV: Self = Self(1000202001);
pub const PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV: Self = Self(1000204000);
Expand Down Expand Up @@ -6302,6 +6309,16 @@ impl StructureType {
pub const PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT: Self = Self(1000482000);
pub const PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT: Self = Self(1000482001);
pub const SHADER_CREATE_INFO_EXT: Self = Self(1000482002);
pub const PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR: Self = Self(1000483000);
pub const PIPELINE_BINARY_CREATE_INFO_KHR: Self = Self(1000483001);
pub const PIPELINE_BINARY_INFO_KHR: Self = Self(1000483002);
pub const PIPELINE_BINARY_KEY_KHR: Self = Self(1000483003);
pub const PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR: Self = Self(1000483004);
pub const RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR: Self = Self(1000483005);
pub const PIPELINE_BINARY_DATA_INFO_KHR: Self = Self(1000483006);
pub const PIPELINE_CREATE_INFO_KHR: Self = Self(1000483007);
pub const DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR: Self = Self(1000483008);
pub const PIPELINE_BINARY_HANDLES_INFO_KHR: Self = Self(1000483009);
pub const PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM: Self = Self(1000484000);
pub const TILE_PROPERTIES_QCOM: Self = Self(1000484001);
pub const PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC: Self = Self(1000485000);
Expand Down Expand Up @@ -6340,6 +6357,8 @@ impl StructureType {
pub const PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM: Self =
Self(1000510000);
pub const MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM: Self = Self(1000510001);
pub const PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR: Self = Self(1000201000);
pub const PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR: Self = Self(1000511000);
pub const VIDEO_DECODE_AV1_CAPABILITIES_KHR: Self = Self(1000512000);
pub const VIDEO_DECODE_AV1_PICTURE_INFO_KHR: Self = Self(1000512001);
pub const VIDEO_DECODE_AV1_PROFILE_INFO_KHR: Self = Self(1000512003);
Expand Down Expand Up @@ -6932,7 +6951,6 @@ impl fmt::Debug for StructureType {
1000189000 => write!(f, "DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD"),
1000190000 => write!(f, "PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT"),
1000191000 => write!(f, "PRESENT_FRAME_TOKEN_GGP"),
1000201000 => write!(f, "PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV"),
1000202000 => write!(f, "PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV"),
1000202001 => write!(f, "PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV"),
1000204000 => write!(f, "PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV"),
Expand Down Expand Up @@ -7395,6 +7413,16 @@ impl fmt::Debug for StructureType {
1000482000 => write!(f, "PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT"),
1000482001 => write!(f, "PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT"),
1000482002 => write!(f, "SHADER_CREATE_INFO_EXT"),
1000483000 => write!(f, "PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR"),
1000483001 => write!(f, "PIPELINE_BINARY_CREATE_INFO_KHR"),
1000483002 => write!(f, "PIPELINE_BINARY_INFO_KHR"),
1000483003 => write!(f, "PIPELINE_BINARY_KEY_KHR"),
1000483004 => write!(f, "PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR"),
1000483005 => write!(f, "RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR"),
1000483006 => write!(f, "PIPELINE_BINARY_DATA_INFO_KHR"),
1000483007 => write!(f, "PIPELINE_CREATE_INFO_KHR"),
1000483008 => write!(f, "DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR"),
1000483009 => write!(f, "PIPELINE_BINARY_HANDLES_INFO_KHR"),
1000484000 => write!(f, "PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM"),
1000484001 => write!(f, "TILE_PROPERTIES_QCOM"),
1000485000 => write!(f, "PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC"),
Expand Down Expand Up @@ -7461,6 +7489,11 @@ impl fmt::Debug for StructureType {
f,
"MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM"
),
1000201000 => write!(f, "PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR"),
1000511000 => write!(
f,
"PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR"
),
1000512000 => write!(f, "VIDEO_DECODE_AV1_CAPABILITIES_KHR"),
1000512001 => write!(f, "VIDEO_DECODE_AV1_PICTURE_INFO_KHR"),
1000512003 => write!(f, "VIDEO_DECODE_AV1_PROFILE_INFO_KHR"),
Expand Down
34 changes: 33 additions & 1 deletion vulkanalia-sys/src/extensions.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3049,6 +3049,22 @@ pub const KHR_CALIBRATED_TIMESTAMPS_EXTENSION: Extension = Extension {
promoted_to: None,
};

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_compute_shader_derivatives.html>
#[allow(deprecated)]
pub const KHR_COMPUTE_SHADER_DERIVATIVES_EXTENSION: Extension = Extension {
name: ExtensionName::from_bytes(b"VK_KHR_compute_shader_derivatives"),
number: 512,
type_: "device",
author: "KHR",
contact: "Jean-Noe Morissette @MagicPoncho",
platform: None,
required_extensions: None,
required_version: None,
deprecated_by: None,
obsoleted_by: None,
promoted_to: None,
};

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_cooperative_matrix.html>
#[allow(deprecated)]
pub const KHR_COOPERATIVE_MATRIX_EXTENSION: Extension = Extension {
Expand Down Expand Up @@ -3881,6 +3897,22 @@ pub const KHR_PERFORMANCE_QUERY_EXTENSION: Extension = Extension {
promoted_to: None,
};

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_pipeline_binary.html>
#[allow(deprecated)]
pub const KHR_PIPELINE_BINARY_EXTENSION: Extension = Extension {
name: ExtensionName::from_bytes(b"VK_KHR_pipeline_binary"),
number: 484,
type_: "device",
author: "KHR",
contact: "Stu Smith @stu-s",
platform: None,
required_extensions: None,
required_version: None,
deprecated_by: None,
obsoleted_by: None,
promoted_to: None,
};

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_pipeline_executable_properties.html>
#[allow(deprecated)]
pub const KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION: Extension = Extension {
Expand Down Expand Up @@ -5056,7 +5088,7 @@ pub const NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION: Extension = Extension {
required_version: None,
deprecated_by: None,
obsoleted_by: None,
promoted_to: None,
promoted_to: Some("VK_KHR_compute_shader_derivatives"),
};

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_NV_cooperative_matrix.html>
Expand Down
44 changes: 44 additions & 0 deletions vulkanalia-sys/src/handles.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1545,6 +1545,50 @@ impl fmt::Debug for Pipeline {
}
}

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPipelineBinaryKHR.html>
#[repr(transparent)]
#[derive(Copy, Clone, PartialEq, Eq, Hash)]
pub struct PipelineBinaryKHR(u64);

impl Handle for PipelineBinaryKHR {
type Repr = u64;

const TYPE: ObjectType = ObjectType::PIPELINE_BINARY_KHR;

#[inline]
fn null() -> Self {
Self(0)
}

#[inline]
fn from_raw(value: Self::Repr) -> Self {
Self(value)
}

#[inline]
fn as_raw(self) -> Self::Repr {
self.0
}

#[inline]
fn is_null(self) -> bool {
self.0 == 0
}
}

impl Default for PipelineBinaryKHR {
#[inline]
fn default() -> Self {
Self::null()
}
}

impl fmt::Debug for PipelineBinaryKHR {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(f, "PipelineBinaryKHR({:p})", self.0 as *const u8)
}
}

/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPipelineCache.html>
#[repr(transparent)]
#[derive(Copy, Clone, PartialEq, Eq, Hash)]
Expand Down
Loading

0 comments on commit 9cbf42f

Please sign in to comment.