vulkanalia_sys/
functions.rs

1// SPDX-License-Identifier: Apache-2.0
2
3// DO NOT EDIT.
4//
5// This file has been generated by the Kotlin project in the `generator`
6// directory from a Vulkan API registry.
7
8#![allow(
9    non_camel_case_types,
10    non_snake_case,
11    clippy::bad_bit_mask,
12    clippy::let_unit_value,
13    clippy::missing_safety_doc,
14    clippy::missing_transmute_annotations,
15    clippy::too_many_arguments,
16    clippy::type_complexity,
17    clippy::unnecessary_cast,
18    clippy::upper_case_acronyms,
19    clippy::useless_transmute
20)]
21
22use core::ffi::{c_char, c_void};
23
24use crate::*;
25
26/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkAllocationFunction.html>
27pub type PFN_vkAllocationFunction = Option<
28    unsafe extern "system" fn(*mut c_void, usize, usize, SystemAllocationScope) -> *mut c_void,
29>;
30
31/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkDebugReportCallbackEXT.html>
32pub type PFN_vkDebugReportCallbackEXT = Option<
33    unsafe extern "system" fn(
34        DebugReportFlagsEXT,
35        DebugReportObjectTypeEXT,
36        u64,
37        usize,
38        i32,
39        *const c_char,
40        *const c_char,
41        *mut c_void,
42    ) -> Bool32,
43>;
44
45/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkDebugUtilsMessengerCallbackEXT.html>
46pub type PFN_vkDebugUtilsMessengerCallbackEXT = Option<
47    unsafe extern "system" fn(
48        DebugUtilsMessageSeverityFlagsEXT,
49        DebugUtilsMessageTypeFlagsEXT,
50        *const DebugUtilsMessengerCallbackDataEXT,
51        *mut c_void,
52    ) -> Bool32,
53>;
54
55/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkDeviceMemoryReportCallbackEXT.html>
56pub type PFN_vkDeviceMemoryReportCallbackEXT =
57    Option<unsafe extern "system" fn(*const DeviceMemoryReportCallbackDataEXT, *mut c_void)>;
58
59/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkFreeFunction.html>
60pub type PFN_vkFreeFunction = Option<unsafe extern "system" fn(*mut c_void, *mut c_void)>;
61
62/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkGetInstanceProcAddrLUNARG.html>
63pub type PFN_vkGetInstanceProcAddrLUNARG =
64    Option<unsafe extern "system" fn(Instance, *const c_char) -> PFN_vkVoidFunction>;
65
66/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkInternalAllocationNotification.html>
67pub type PFN_vkInternalAllocationNotification = Option<
68    unsafe extern "system" fn(*mut c_void, usize, InternalAllocationType, SystemAllocationScope),
69>;
70
71/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkInternalFreeNotification.html>
72pub type PFN_vkInternalFreeNotification = Option<
73    unsafe extern "system" fn(*mut c_void, usize, InternalAllocationType, SystemAllocationScope),
74>;
75
76/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkReallocationFunction.html>
77pub type PFN_vkReallocationFunction = Option<
78    unsafe extern "system" fn(
79        *mut c_void,
80        *mut c_void,
81        usize,
82        usize,
83        SystemAllocationScope,
84    ) -> *mut c_void,
85>;
86
87/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/PFN_vkVoidFunction.html>
88pub type PFN_vkVoidFunction = Option<unsafe extern "system" fn()>;