pub type CustomDevice = *mut ::core::ffi::c_void; #[doc = "*Required features: `\"Devices_Custom\"`*"] #[repr(transparent)] pub struct DeviceAccessMode(pub i32); impl DeviceAccessMode { pub const Read: Self = Self(0i32); pub const Write: Self = Self(1i32); pub const ReadWrite: Self = Self(2i32); } impl ::core::marker::Copy for DeviceAccessMode {} impl ::core::clone::Clone for DeviceAccessMode { fn clone(&self) -> Self { *self } } #[doc = "*Required features: `\"Devices_Custom\"`*"] #[repr(transparent)] pub struct DeviceSharingMode(pub i32); impl DeviceSharingMode { pub const Shared: Self = Self(0i32); pub const Exclusive: Self = Self(1i32); } impl ::core::marker::Copy for DeviceSharingMode {} impl ::core::clone::Clone for DeviceSharingMode { fn clone(&self) -> Self { *self } } pub type IIOControlCode = *mut ::core::ffi::c_void; #[doc = "*Required features: `\"Devices_Custom\"`*"] #[repr(transparent)] pub struct IOControlAccessMode(pub i32); impl IOControlAccessMode { pub const Any: Self = Self(0i32); pub const Read: Self = Self(1i32); pub const Write: Self = Self(2i32); pub const ReadWrite: Self = Self(3i32); } impl ::core::marker::Copy for IOControlAccessMode {} impl ::core::clone::Clone for IOControlAccessMode { fn clone(&self) -> Self { *self } } #[doc = "*Required features: `\"Devices_Custom\"`*"] #[repr(transparent)] pub struct IOControlBufferingMethod(pub i32); impl IOControlBufferingMethod { pub const Buffered: Self = Self(0i32); pub const DirectInput: Self = Self(1i32); pub const DirectOutput: Self = Self(2i32); pub const Neither: Self = Self(3i32); } impl ::core::marker::Copy for IOControlBufferingMethod {} impl ::core::clone::Clone for IOControlBufferingMethod { fn clone(&self) -> Self { *self } } pub type IOControlCode = *mut ::core::ffi::c_void;