vulkanalia_sys/
typedefs.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::needless_lifetimes,
16    clippy::too_many_arguments,
17    clippy::type_complexity,
18    clippy::unnecessary_cast,
19    clippy::upper_case_acronyms,
20    clippy::useless_transmute
21)]
22
23use core::ffi::{c_ulong, c_void};
24
25/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkBool32.html>
26pub type Bool32 = u32;
27/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkDeviceAddress.html>
28pub type DeviceAddress = u64;
29/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkDeviceSize.html>
30pub type DeviceSize = u64;
31/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkFlags.html>
32pub type Flags = u32;
33/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkFlags64.html>
34pub type Flags64 = u64;
35/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkRemoteAddressNV.html>
36pub type RemoteAddressNV = c_void;
37/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/VkSampleMask.html>
38pub type SampleMask = u32;
39
40// Android
41
42pub type ANativeWindow = c_void;
43pub type AHardwareBuffer = c_void;
44
45// DirectFB
46
47pub type IDirectFB = c_void;
48pub type IDirectFBSurface = c_void;
49
50// iOS / macOS
51
52pub type CAMetalLayer = c_void;
53pub type GgpFrameToken = u32;
54pub type GgpStreamDescriptor = u32;
55pub type IOSurfaceRef = *mut c_void;
56pub type MTLBuffer_id = *mut c_void;
57pub type MTLCommandQueue_id = *mut c_void;
58pub type MTLDevice_id = *mut c_void;
59pub type MTLSharedEvent_id = *mut c_void;
60pub type MTLTexture_id = *mut c_void;
61
62// QNX
63
64pub type _screen_buffer = c_void;
65pub type _screen_context = c_void;
66pub type _screen_window = c_void;
67
68// Wayland
69
70pub type wl_display = c_void;
71pub type wl_surface = c_void;
72
73// Windows
74
75pub type DWORD = c_ulong;
76pub type HANDLE = *mut c_void;
77pub type HINSTANCE = *mut c_void;
78pub type HMONITOR = *mut c_void;
79pub type HWND = *mut c_void;
80pub type LPCWSTR = *const u16;
81pub type SECURITY_ATTRIBUTES = c_void;
82
83// X11
84
85pub type Display = *const c_void;
86pub type RROutput = c_ulong;
87pub type VisualID = c_ulong;
88pub type Window = c_ulong;
89pub type xcb_connection_t = c_void;
90pub type xcb_visualid_t = u32;
91pub type xcb_window_t = u32;
92pub type zx_handle_t = u32;
93
94// NvSciBuf / NvSciSync
95
96pub type NvSciBufAttrList = *mut c_void;
97pub type NvSciBufObj = *mut c_void;
98pub type NvSciSyncAttrList = *mut c_void;
99pub type NvSciSyncObj = *mut c_void;
100
101#[repr(C)]
102#[derive(Copy, Clone, Default, Debug, PartialEq)]
103pub struct NvSciSyncFence {
104    pub payload: [u64; 6],
105}
106
107// Open Harmony OS
108
109pub type OHNativeWindow = c_void;