1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
// DO NOT EDIT: @generated by erupt's generator
///<s>Vulkan Manual Page</s> · Constant
#[doc(alias = "VK_LUID_SIZE_KHR")]
pub const LUID_SIZE_KHR: u32 = 8;
///<s>Vulkan Manual Page</s> · Constant
#[doc(alias = "VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION")]
pub const KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION: u32 = 1;
///<s>Vulkan Manual Page</s> · Constant
#[doc(alias = "VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME")]
pub const KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME: *const std::os::raw::c_char = crate::cstr!(
    "VK_KHR_external_memory_capabilities"
);
///<s>Vulkan Manual Page</s> · Constant
pub const FN_GET_PHYSICAL_DEVICE_EXTERNAL_BUFFER_PROPERTIES_KHR: *const std::os::raw::c_char = crate::cstr!(
    "vkGetPhysicalDeviceExternalBufferPropertiesKHR"
);
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalMemoryHandleTypeFlagsKHR.html) · Alias
#[doc(alias = "VkExternalMemoryHandleTypeFlagsKHR")]
#[allow(non_camel_case_types)]
pub type ExternalMemoryHandleTypeFlagsKHR = crate::vk1_1::ExternalMemoryHandleTypeFlags;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalMemoryFeatureFlagsKHR.html) · Alias
#[doc(alias = "VkExternalMemoryFeatureFlagsKHR")]
#[allow(non_camel_case_types)]
pub type ExternalMemoryFeatureFlagsKHR = crate::vk1_1::ExternalMemoryFeatureFlags;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalMemoryHandleTypeFlagBitsKHR.html) · Alias
#[doc(alias = "VkExternalMemoryHandleTypeFlagBitsKHR")]
#[allow(non_camel_case_types)]
pub type ExternalMemoryHandleTypeFlagBitsKHR = crate::vk1_1::ExternalMemoryHandleTypeFlagBits;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalMemoryFeatureFlagBitsKHR.html) · Alias
#[doc(alias = "VkExternalMemoryFeatureFlagBitsKHR")]
#[allow(non_camel_case_types)]
pub type ExternalMemoryFeatureFlagBitsKHR = crate::vk1_1::ExternalMemoryFeatureFlagBits;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalMemoryPropertiesKHR.html) · Alias
#[doc(alias = "VkExternalMemoryPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type ExternalMemoryPropertiesKHR = crate::vk1_1::ExternalMemoryProperties;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalMemoryPropertiesKHR.html) · Alias
#[doc(alias = "VkExternalMemoryPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type ExternalMemoryPropertiesKHRBuilder<'a> = crate::vk1_1::ExternalMemoryPropertiesBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceExternalImageFormatInfoKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceExternalImageFormatInfoKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceExternalImageFormatInfoKHR = crate::vk1_1::PhysicalDeviceExternalImageFormatInfo;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceExternalImageFormatInfoKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceExternalImageFormatInfoKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceExternalImageFormatInfoKHRBuilder<'a> = crate::vk1_1::PhysicalDeviceExternalImageFormatInfoBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalImageFormatPropertiesKHR.html) · Alias
#[doc(alias = "VkExternalImageFormatPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type ExternalImageFormatPropertiesKHR = crate::vk1_1::ExternalImageFormatProperties;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalImageFormatPropertiesKHR.html) · Alias
#[doc(alias = "VkExternalImageFormatPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type ExternalImageFormatPropertiesKHRBuilder<'a> = crate::vk1_1::ExternalImageFormatPropertiesBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceExternalBufferInfoKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceExternalBufferInfoKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceExternalBufferInfoKHR = crate::vk1_1::PhysicalDeviceExternalBufferInfo;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceExternalBufferInfoKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceExternalBufferInfoKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceExternalBufferInfoKHRBuilder<'a> = crate::vk1_1::PhysicalDeviceExternalBufferInfoBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalBufferPropertiesKHR.html) · Alias
#[doc(alias = "VkExternalBufferPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type ExternalBufferPropertiesKHR = crate::vk1_1::ExternalBufferProperties;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkExternalBufferPropertiesKHR.html) · Alias
#[doc(alias = "VkExternalBufferPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type ExternalBufferPropertiesKHRBuilder<'a> = crate::vk1_1::ExternalBufferPropertiesBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceIDPropertiesKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceIDPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceIDPropertiesKHR = crate::vk1_1::PhysicalDeviceIDProperties;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceIDPropertiesKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceIDPropertiesKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceIDPropertiesKHRBuilder<'a> = crate::vk1_1::PhysicalDeviceIDPropertiesBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceExternalBufferPropertiesKHR.html) · Alias
#[allow(non_camel_case_types)]
pub type PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR = crate::vk1_1::PFN_vkGetPhysicalDeviceExternalBufferProperties;
///Provided by [`crate::extensions::khr_external_memory_capabilities`]
impl crate::vk1_0::StructureType {
    pub const PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR: Self = Self::PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO;
    pub const EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR: Self = Self::EXTERNAL_IMAGE_FORMAT_PROPERTIES;
    pub const PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR: Self = Self::PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO;
    pub const EXTERNAL_BUFFER_PROPERTIES_KHR: Self = Self::EXTERNAL_BUFFER_PROPERTIES;
    pub const PHYSICAL_DEVICE_ID_PROPERTIES_KHR: Self = Self::PHYSICAL_DEVICE_ID_PROPERTIES;
}
///Provided by [`crate::extensions::khr_external_memory_capabilities`]
impl crate::vk1_1::ExternalMemoryHandleTypeFlagBits {
    pub const OPAQUE_FD_KHR: Self = Self::OPAQUE_FD;
    pub const OPAQUE_WIN32_KHR: Self = Self::OPAQUE_WIN32;
    pub const OPAQUE_WIN32_KMT_KHR: Self = Self::OPAQUE_WIN32_KMT;
    pub const D3D11_TEXTURE_KHR: Self = Self::D3D11_TEXTURE;
    pub const D3D11_TEXTURE_KMT_KHR: Self = Self::D3D11_TEXTURE_KMT;
    pub const D3D12_HEAP_KHR: Self = Self::D3D12_HEAP;
    pub const D3D12_RESOURCE_KHR: Self = Self::D3D12_RESOURCE;
}
///Provided by [`crate::extensions::khr_external_memory_capabilities`]
impl crate::vk1_1::ExternalMemoryFeatureFlagBits {
    pub const DEDICATED_ONLY_KHR: Self = Self::DEDICATED_ONLY;
    pub const EXPORTABLE_KHR: Self = Self::EXPORTABLE;
    pub const IMPORTABLE_KHR: Self = Self::IMPORTABLE;
}
///Provided by [`crate::extensions::khr_external_memory_capabilities`]
impl crate::InstanceLoader {
    #[inline]
    #[track_caller]
    ///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceExternalBufferPropertiesKHR.html) · Function
    #[doc(alias = "vkGetPhysicalDeviceExternalBufferPropertiesKHR")]
    pub unsafe fn get_physical_device_external_buffer_properties_khr(
        &self,
        physical_device: crate::vk1_0::PhysicalDevice,
        external_buffer_info: &crate::vk1_1::PhysicalDeviceExternalBufferInfo,
        external_buffer_properties: &mut crate::vk1_1::ExternalBufferProperties,
    ) -> () {
        let _function = self
            .get_physical_device_external_buffer_properties_khr
            .expect(crate::NOT_LOADED_MESSAGE);
        let _return = _function(
            physical_device as _,
            external_buffer_info as _,
            external_buffer_properties as _,
        );
        ()
    }
}