Skip to main content

lava/vulkan/nv/
vk_bind_shader_group_indirect_command.rs

1// Generated by `scripts/generate.js`
2
3use std::os::raw::c_char;
4use std::ops::Deref;
5use std::ptr;
6use std::cmp;
7use std::mem;
8use utils::c_bindings::*;
9use utils::vk_convert::*;
10use utils::vk_null::*;
11use utils::vk_ptr::*;
12use utils::vk_traits::*;
13use vulkan::vk::*;
14
15/// Wrapper for [VkBindShaderGroupIndirectCommandNV](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkBindShaderGroupIndirectCommandNV.html).
16#[derive(Debug, Clone)]
17pub struct VkBindShaderGroupIndirectCommand {
18    pub group_index: usize,
19}
20
21#[doc(hidden)]
22#[repr(C)]
23#[derive(Debug, Copy, Clone)]
24pub struct RawVkBindShaderGroupIndirectCommand {
25    pub group_index: u32,
26}
27
28impl VkWrappedType<RawVkBindShaderGroupIndirectCommand> for VkBindShaderGroupIndirectCommand {
29    fn vk_to_raw(src: &VkBindShaderGroupIndirectCommand, dst: &mut RawVkBindShaderGroupIndirectCommand) {
30        dst.group_index = vk_to_raw_value(&src.group_index);
31    }
32}
33
34impl VkRawType<VkBindShaderGroupIndirectCommand> for RawVkBindShaderGroupIndirectCommand {
35    fn vk_to_wrapped(src: &RawVkBindShaderGroupIndirectCommand) -> VkBindShaderGroupIndirectCommand {
36        VkBindShaderGroupIndirectCommand {
37            group_index: u32::vk_to_wrapped(&src.group_index),
38        }
39    }
40}
41
42impl Default for VkBindShaderGroupIndirectCommand {
43    fn default() -> VkBindShaderGroupIndirectCommand {
44        VkBindShaderGroupIndirectCommand {
45            group_index: 0,
46        }
47    }
48}
49
50impl VkSetup for VkBindShaderGroupIndirectCommand {
51    fn vk_setup(&mut self, fn_table: *mut VkFunctionTable) {
52        
53    }
54}
55
56impl VkFree for RawVkBindShaderGroupIndirectCommand {
57    fn vk_free(&self) {
58        
59    }
60}