ash/extensions/khr/
create_renderpass2.rs1use crate::prelude::*;
4use crate::vk;
5use crate::RawPtr;
6use core::mem;
7
8impl crate::khr::create_renderpass2::Device {
9 #[inline]
11 pub unsafe fn create_render_pass2(
12 &self,
13 create_info: &vk::RenderPassCreateInfo2<'_>,
14 allocation_callbacks: Option<&vk::AllocationCallbacks<'_>>,
15 ) -> VkResult<vk::RenderPass> {
16 let mut renderpass = mem::MaybeUninit::uninit();
17 (self.fp.create_render_pass2_khr)(
18 self.handle,
19 create_info,
20 allocation_callbacks.as_raw_ptr(),
21 renderpass.as_mut_ptr(),
22 )
23 .assume_init_on_success(renderpass)
24 }
25
26 #[inline]
28 pub unsafe fn cmd_begin_render_pass2(
29 &self,
30 command_buffer: vk::CommandBuffer,
31 render_pass_begin_info: &vk::RenderPassBeginInfo<'_>,
32 subpass_begin_info: &vk::SubpassBeginInfo<'_>,
33 ) {
34 (self.fp.cmd_begin_render_pass2_khr)(
35 command_buffer,
36 render_pass_begin_info,
37 subpass_begin_info,
38 );
39 }
40
41 #[inline]
43 pub unsafe fn cmd_next_subpass2(
44 &self,
45 command_buffer: vk::CommandBuffer,
46 subpass_begin_info: &vk::SubpassBeginInfo<'_>,
47 subpass_end_info: &vk::SubpassEndInfo<'_>,
48 ) {
49 (self.fp.cmd_next_subpass2_khr)(command_buffer, subpass_begin_info, subpass_end_info);
50 }
51
52 #[inline]
54 pub unsafe fn cmd_end_render_pass2(
55 &self,
56 command_buffer: vk::CommandBuffer,
57 subpass_end_info: &vk::SubpassEndInfo<'_>,
58 ) {
59 (self.fp.cmd_end_render_pass2_khr)(command_buffer, subpass_end_info);
60 }
61}