1use super::*;
2
3pub unsafe fn queue_submit(
4 device: &Device,
5 command_buffer: &CommandBuffer,
6 wait_semaphores: &[vk::SemaphoreSubmitInfo],
7 signal_semaphores: &[vk::SemaphoreSubmitInfo],
8) -> Result<()> {
9 device.queue_submit2(
10 device.queue_handle(),
11 1,
12 &vk::SubmitInfo2 {
13 s_type: vk::StructureType::SubmitInfo2,
14 p_next: null(),
15 flags: vk::SubmitFlags::empty(),
16 wait_semaphore_info_count: wait_semaphores.len() as _,
17 p_wait_semaphore_infos: wait_semaphores.as_ptr(),
18 command_buffer_info_count: 1,
19 p_command_buffer_infos: &vk::CommandBufferSubmitInfo {
20 s_type: vk::StructureType::CommandBufferSubmitInfo,
21 p_next: null(),
22 command_buffer: command_buffer.handle(),
23 device_mask: 0,
24 },
25 signal_semaphore_info_count: signal_semaphores.len() as _,
26 p_signal_semaphore_infos: signal_semaphores.as_ptr(),
27 },
28 vk::Fence::null(),
29 )?;
30 Ok(())
31}