use objc2::{Encode, Encoding, RefEncode};
#[repr(transparent)]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub struct MTLAccelerationStructureInstanceOptions(pub u32);
bitflags::bitflags! {
impl MTLAccelerationStructureInstanceOptions: u32 {
const None = 0;
const DisableTriangleCulling = 1<<0;
const TriangleFrontFacingWindingCounterClockwise = 1<<1;
const Opaque = 1<<2;
const NonOpaque = 1<<3;
}
}
unsafe impl Encode for MTLAccelerationStructureInstanceOptions {
const ENCODING: Encoding = u32::ENCODING;
}
unsafe impl RefEncode for MTLAccelerationStructureInstanceOptions {
const ENCODING_REF: Encoding = Encoding::Pointer(&Self::ENCODING);
}