use utils::vk_traits::*;
#[repr(i32)]
#[derive(Debug, PartialEq, Copy, Clone)]
pub enum VkScope {
Device = 1,
Workgroup = 2,
Subgroup = 3,
QueueFamily = 5,
}
#[doc(hidden)]
pub type RawVkScope = i32;
impl VkWrappedType<RawVkScope> for VkScope {
fn vk_to_raw(src: &VkScope, dst: &mut RawVkScope) {
*dst = *src as i32
}
}
impl VkRawType<VkScope> for RawVkScope {
fn vk_to_wrapped(src: &RawVkScope) -> VkScope {
unsafe {
*((src as *const i32) as *const VkScope)
}
}
}
impl Default for VkScope {
fn default() -> VkScope {
VkScope::Device
}
}