1#![allow(missing_docs)]
16use super::*;
17use ash::vk::*;
18#[cfg(unix)]
19mod unix;
20#[cfg(windows)]
21mod windows;
22#[cfg(unix)]
23pub use unix::*;
24#[cfg(windows)]
25pub use windows::*;
26pub type PFN_GetPhysicalDeviceProcAddr = ::std::option::Option<
29 unsafe extern "C" fn(
30 instance: VkInstance,
31 pName: *const ::std::os::raw::c_char,
32 ) -> PFN_vkVoidFunction,
33>;
34#[repr(C)]
35pub struct VkNegotiateLayerInterface {
36 pub sType: VkNegotiateLayerStructType,
37 pub pNext: *mut ::std::os::raw::c_void,
38 pub loaderLayerInterfaceVersion: u32,
39 pub pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddr,
40 pub pfnGetDeviceProcAddr: PFN_vkGetDeviceProcAddr,
41 pub pfnGetPhysicalDeviceProcAddr: PFN_GetPhysicalDeviceProcAddr,
42}
43#[test]
44fn bindgen_test_layout_VkNegotiateLayerInterface() {
45 const UNINIT: ::std::mem::MaybeUninit<VkNegotiateLayerInterface> =
46 ::std::mem::MaybeUninit::uninit();
47 let ptr = UNINIT.as_ptr();
48 assert_eq!(
49 ::std::mem::size_of::<VkNegotiateLayerInterface>(),
50 48usize,
51 concat!("Size of: ", stringify!(VkNegotiateLayerInterface))
52 );
53 assert_eq!(
54 ::std::mem::align_of::<VkNegotiateLayerInterface>(),
55 8usize,
56 concat!("Alignment of ", stringify!(VkNegotiateLayerInterface))
57 );
58 assert_eq!(
59 unsafe { ::std::ptr::addr_of!((*ptr).sType) as usize - ptr as usize },
60 0usize,
61 concat!(
62 "Offset of field: ",
63 stringify!(VkNegotiateLayerInterface),
64 "::",
65 stringify!(sType)
66 )
67 );
68 assert_eq!(
69 unsafe { ::std::ptr::addr_of!((*ptr).pNext) as usize - ptr as usize },
70 8usize,
71 concat!(
72 "Offset of field: ",
73 stringify!(VkNegotiateLayerInterface),
74 "::",
75 stringify!(pNext)
76 )
77 );
78 assert_eq!(
79 unsafe { ::std::ptr::addr_of!((*ptr).loaderLayerInterfaceVersion) as usize - ptr as usize },
80 16usize,
81 concat!(
82 "Offset of field: ",
83 stringify!(VkNegotiateLayerInterface),
84 "::",
85 stringify!(loaderLayerInterfaceVersion)
86 )
87 );
88 assert_eq!(
89 unsafe { ::std::ptr::addr_of!((*ptr).pfnGetInstanceProcAddr) as usize - ptr as usize },
90 24usize,
91 concat!(
92 "Offset of field: ",
93 stringify!(VkNegotiateLayerInterface),
94 "::",
95 stringify!(pfnGetInstanceProcAddr)
96 )
97 );
98 assert_eq!(
99 unsafe { ::std::ptr::addr_of!((*ptr).pfnGetDeviceProcAddr) as usize - ptr as usize },
100 32usize,
101 concat!(
102 "Offset of field: ",
103 stringify!(VkNegotiateLayerInterface),
104 "::",
105 stringify!(pfnGetDeviceProcAddr)
106 )
107 );
108 assert_eq!(
109 unsafe {
110 ::std::ptr::addr_of!((*ptr).pfnGetPhysicalDeviceProcAddr) as usize - ptr as usize
111 },
112 40usize,
113 concat!(
114 "Offset of field: ",
115 stringify!(VkNegotiateLayerInterface),
116 "::",
117 stringify!(pfnGetPhysicalDeviceProcAddr)
118 )
119 );
120}
121impl Default for VkNegotiateLayerInterface {
122 fn default() -> Self {
123 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
124 unsafe {
125 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
126 s.assume_init()
127 }
128 }
129}
130#[repr(C)]
131pub struct VkLayerInstanceLink_ {
132 pub pNext: *mut VkLayerInstanceLink_,
133 pub pfnNextGetInstanceProcAddr: PFN_vkGetInstanceProcAddr,
134 pub pfnNextGetPhysicalDeviceProcAddr: PFN_GetPhysicalDeviceProcAddr,
135}
136#[test]
137fn bindgen_test_layout_VkLayerInstanceLink_() {
138 const UNINIT: ::std::mem::MaybeUninit<VkLayerInstanceLink_> = ::std::mem::MaybeUninit::uninit();
139 let ptr = UNINIT.as_ptr();
140 assert_eq!(
141 ::std::mem::size_of::<VkLayerInstanceLink_>(),
142 24usize,
143 concat!("Size of: ", stringify!(VkLayerInstanceLink_))
144 );
145 assert_eq!(
146 ::std::mem::align_of::<VkLayerInstanceLink_>(),
147 8usize,
148 concat!("Alignment of ", stringify!(VkLayerInstanceLink_))
149 );
150 assert_eq!(
151 unsafe { ::std::ptr::addr_of!((*ptr).pNext) as usize - ptr as usize },
152 0usize,
153 concat!(
154 "Offset of field: ",
155 stringify!(VkLayerInstanceLink_),
156 "::",
157 stringify!(pNext)
158 )
159 );
160 assert_eq!(
161 unsafe { ::std::ptr::addr_of!((*ptr).pfnNextGetInstanceProcAddr) as usize - ptr as usize },
162 8usize,
163 concat!(
164 "Offset of field: ",
165 stringify!(VkLayerInstanceLink_),
166 "::",
167 stringify!(pfnNextGetInstanceProcAddr)
168 )
169 );
170 assert_eq!(
171 unsafe {
172 ::std::ptr::addr_of!((*ptr).pfnNextGetPhysicalDeviceProcAddr) as usize - ptr as usize
173 },
174 16usize,
175 concat!(
176 "Offset of field: ",
177 stringify!(VkLayerInstanceLink_),
178 "::",
179 stringify!(pfnNextGetPhysicalDeviceProcAddr)
180 )
181 );
182}
183impl Default for VkLayerInstanceLink_ {
184 fn default() -> Self {
185 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
186 unsafe {
187 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
188 s.assume_init()
189 }
190 }
191}
192pub type VkLayerInstanceLink = VkLayerInstanceLink_;
193pub type PFN_vkSetInstanceLoaderData = ::std::option::Option<
194 unsafe extern "C" fn(instance: VkInstance, object: *mut ::std::os::raw::c_void) -> VkResult,
195>;
196pub type PFN_vkSetDeviceLoaderData = ::std::option::Option<
197 unsafe extern "C" fn(device: VkDevice, object: *mut ::std::os::raw::c_void) -> VkResult,
198>;
199pub type PFN_vkLayerCreateDevice = ::std::option::Option<
200 unsafe extern "C" fn(
201 instance: VkInstance,
202 physicalDevice: VkPhysicalDevice,
203 pCreateInfo: *const VkDeviceCreateInfo,
204 pAllocator: *const VkAllocationCallbacks,
205 pDevice: *mut VkDevice,
206 layerGIPA: PFN_vkGetInstanceProcAddr,
207 nextGDPA: *mut PFN_vkGetDeviceProcAddr,
208 ) -> VkResult,
209>;
210pub type PFN_vkLayerDestroyDevice = ::std::option::Option<
211 unsafe extern "C" fn(
212 physicalDevice: VkDevice,
213 pAllocator: *const VkAllocationCallbacks,
214 destroyFunction: PFN_vkDestroyDevice,
215 ),
216>;
217#[repr(C)]
218pub struct VkLayerDeviceLink_ {
219 pub pNext: *mut VkLayerDeviceLink_,
220 pub pfnNextGetInstanceProcAddr: PFN_vkGetInstanceProcAddr,
221 pub pfnNextGetDeviceProcAddr: PFN_vkGetDeviceProcAddr,
222}
223#[test]
224fn bindgen_test_layout_VkLayerDeviceLink_() {
225 const UNINIT: ::std::mem::MaybeUninit<VkLayerDeviceLink_> = ::std::mem::MaybeUninit::uninit();
226 let ptr = UNINIT.as_ptr();
227 assert_eq!(
228 ::std::mem::size_of::<VkLayerDeviceLink_>(),
229 24usize,
230 concat!("Size of: ", stringify!(VkLayerDeviceLink_))
231 );
232 assert_eq!(
233 ::std::mem::align_of::<VkLayerDeviceLink_>(),
234 8usize,
235 concat!("Alignment of ", stringify!(VkLayerDeviceLink_))
236 );
237 assert_eq!(
238 unsafe { ::std::ptr::addr_of!((*ptr).pNext) as usize - ptr as usize },
239 0usize,
240 concat!(
241 "Offset of field: ",
242 stringify!(VkLayerDeviceLink_),
243 "::",
244 stringify!(pNext)
245 )
246 );
247 assert_eq!(
248 unsafe { ::std::ptr::addr_of!((*ptr).pfnNextGetInstanceProcAddr) as usize - ptr as usize },
249 8usize,
250 concat!(
251 "Offset of field: ",
252 stringify!(VkLayerDeviceLink_),
253 "::",
254 stringify!(pfnNextGetInstanceProcAddr)
255 )
256 );
257 assert_eq!(
258 unsafe { ::std::ptr::addr_of!((*ptr).pfnNextGetDeviceProcAddr) as usize - ptr as usize },
259 16usize,
260 concat!(
261 "Offset of field: ",
262 stringify!(VkLayerDeviceLink_),
263 "::",
264 stringify!(pfnNextGetDeviceProcAddr)
265 )
266 );
267}
268impl Default for VkLayerDeviceLink_ {
269 fn default() -> Self {
270 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
271 unsafe {
272 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
273 s.assume_init()
274 }
275 }
276}
277pub type VkLayerDeviceLink = VkLayerDeviceLink_;
278#[repr(C)]
279pub struct VkLayerDeviceCreateInfo {
280 pub sType: VkStructureType,
281 pub pNext: *const ::std::os::raw::c_void,
282 pub function: VkLayerFunction,
283 pub u: VkLayerDeviceCreateInfo__bindgen_ty_1,
284}
285#[repr(C)]
286#[derive(Copy, Clone)]
287pub union VkLayerDeviceCreateInfo__bindgen_ty_1 {
288 pub pLayerInfo: *mut VkLayerDeviceLink,
289 pub pfnSetDeviceLoaderData: PFN_vkSetDeviceLoaderData,
290}
291#[test]
292fn bindgen_test_layout_VkLayerDeviceCreateInfo__bindgen_ty_1() {
293 const UNINIT: ::std::mem::MaybeUninit<VkLayerDeviceCreateInfo__bindgen_ty_1> =
294 ::std::mem::MaybeUninit::uninit();
295 let ptr = UNINIT.as_ptr();
296 assert_eq!(
297 ::std::mem::size_of::<VkLayerDeviceCreateInfo__bindgen_ty_1>(),
298 8usize,
299 concat!(
300 "Size of: ",
301 stringify!(VkLayerDeviceCreateInfo__bindgen_ty_1)
302 )
303 );
304 assert_eq!(
305 ::std::mem::align_of::<VkLayerDeviceCreateInfo__bindgen_ty_1>(),
306 8usize,
307 concat!(
308 "Alignment of ",
309 stringify!(VkLayerDeviceCreateInfo__bindgen_ty_1)
310 )
311 );
312 assert_eq!(
313 unsafe { ::std::ptr::addr_of!((*ptr).pLayerInfo) as usize - ptr as usize },
314 0usize,
315 concat!(
316 "Offset of field: ",
317 stringify!(VkLayerDeviceCreateInfo__bindgen_ty_1),
318 "::",
319 stringify!(pLayerInfo)
320 )
321 );
322 assert_eq!(
323 unsafe { ::std::ptr::addr_of!((*ptr).pfnSetDeviceLoaderData) as usize - ptr as usize },
324 0usize,
325 concat!(
326 "Offset of field: ",
327 stringify!(VkLayerDeviceCreateInfo__bindgen_ty_1),
328 "::",
329 stringify!(pfnSetDeviceLoaderData)
330 )
331 );
332}
333impl Default for VkLayerDeviceCreateInfo__bindgen_ty_1 {
334 fn default() -> Self {
335 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
336 unsafe {
337 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
338 s.assume_init()
339 }
340 }
341}
342#[test]
343fn bindgen_test_layout_VkLayerDeviceCreateInfo() {
344 const UNINIT: ::std::mem::MaybeUninit<VkLayerDeviceCreateInfo> =
345 ::std::mem::MaybeUninit::uninit();
346 let ptr = UNINIT.as_ptr();
347 assert_eq!(
348 ::std::mem::size_of::<VkLayerDeviceCreateInfo>(),
349 32usize,
350 concat!("Size of: ", stringify!(VkLayerDeviceCreateInfo))
351 );
352 assert_eq!(
353 ::std::mem::align_of::<VkLayerDeviceCreateInfo>(),
354 8usize,
355 concat!("Alignment of ", stringify!(VkLayerDeviceCreateInfo))
356 );
357 assert_eq!(
358 unsafe { ::std::ptr::addr_of!((*ptr).sType) as usize - ptr as usize },
359 0usize,
360 concat!(
361 "Offset of field: ",
362 stringify!(VkLayerDeviceCreateInfo),
363 "::",
364 stringify!(sType)
365 )
366 );
367 assert_eq!(
368 unsafe { ::std::ptr::addr_of!((*ptr).pNext) as usize - ptr as usize },
369 8usize,
370 concat!(
371 "Offset of field: ",
372 stringify!(VkLayerDeviceCreateInfo),
373 "::",
374 stringify!(pNext)
375 )
376 );
377 assert_eq!(
378 unsafe { ::std::ptr::addr_of!((*ptr).function) as usize - ptr as usize },
379 16usize,
380 concat!(
381 "Offset of field: ",
382 stringify!(VkLayerDeviceCreateInfo),
383 "::",
384 stringify!(function)
385 )
386 );
387 assert_eq!(
388 unsafe { ::std::ptr::addr_of!((*ptr).u) as usize - ptr as usize },
389 24usize,
390 concat!(
391 "Offset of field: ",
392 stringify!(VkLayerDeviceCreateInfo),
393 "::",
394 stringify!(u)
395 )
396 );
397}
398impl Default for VkLayerDeviceCreateInfo {
399 fn default() -> Self {
400 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
401 unsafe {
402 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
403 s.assume_init()
404 }
405 }
406}