use utils::vk_traits::*;
#[repr(i32)]
#[derive(Debug, PartialEq, Copy, Clone)]
pub enum VkPrimitiveTopology {
PointList = 0,
LineList = 1,
LineStrip = 2,
TriangleList = 3,
TriangleStrip = 4,
TriangleFan = 5,
LineListWithAdjacency = 6,
LineStripWithAdjacency = 7,
TriangleListWithAdjacency = 8,
TriangleStripWithAdjacency = 9,
PatchList = 10,
}
#[doc(hidden)]
pub type RawVkPrimitiveTopology = i32;
impl VkWrappedType<RawVkPrimitiveTopology> for VkPrimitiveTopology {
fn vk_to_raw(src: &VkPrimitiveTopology, dst: &mut RawVkPrimitiveTopology) {
*dst = *src as i32
}
}
impl VkRawType<VkPrimitiveTopology> for RawVkPrimitiveTopology {
fn vk_to_wrapped(src: &RawVkPrimitiveTopology) -> VkPrimitiveTopology {
unsafe {
*((src as *const i32) as *const VkPrimitiveTopology)
}
}
}
impl Default for VkPrimitiveTopology {
fn default() -> VkPrimitiveTopology {
VkPrimitiveTopology::PointList
}
}