pub struct InputDevice {
pub device_name: Option<String>,
pub device_type: Option<DeviceType>,
pub source_states: Option<Vec<SourceState>>,
pub mutable_toggle_state: Option<ToggleStateFlags>,
pub state: Option<DeviceState>,
/* private fields */
}
Expand description
Contains the information for an input device. The device is uniquely identified by the combination of device_name and device_type.
Fields§
§device_name: Option<String>
Uniquely identifies a device within a device type.
device_type: Option<DeviceType>
The type of input device (e.g. camera, microphone).
source_states: Option<Vec<SourceState>>
The state for each individual DeviceStateSource.
mutable_toggle_state: Option<ToggleStateFlags>
The software toggle states which are allowed to be changed for a device.
state: Option<DeviceState>
The overall state of the device, considering the combination of the source states.
Trait Implementations§
Source§impl Clone for InputDevice
impl Clone for InputDevice
Source§fn clone(&self) -> InputDevice
fn clone(&self) -> InputDevice
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for InputDevice
impl Debug for InputDevice
Source§impl<D: ResourceDialect> Decode<InputDevice, D> for InputDevice
impl<D: ResourceDialect> Decode<InputDevice, D> for InputDevice
Source§impl Default for InputDevice
impl Default for InputDevice
Source§fn default() -> InputDevice
fn default() -> InputDevice
Returns the “default value” for a type. Read more
Source§impl<D: ResourceDialect> Encode<InputDevice, D> for &InputDevice
impl<D: ResourceDialect> Encode<InputDevice, D> for &InputDevice
Source§impl PartialEq for InputDevice
impl PartialEq for InputDevice
Source§impl TypeMarker for InputDevice
impl TypeMarker for InputDevice
Source§type Owned = InputDevice
type Owned = InputDevice
The owned Rust type which this FIDL type decodes into.
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.Source§impl ValueTypeMarker for InputDevice
impl ValueTypeMarker for InputDevice
Source§type Borrowed<'a> = &'a InputDevice
type Borrowed<'a> = &'a InputDevice
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read moreimpl Persistable for InputDevice
impl StructuralPartialEq for InputDevice
Auto Trait Implementations§
impl Freeze for InputDevice
impl RefUnwindSafe for InputDevice
impl Send for InputDevice
impl Sync for InputDevice
impl Unpin for InputDevice
impl UnwindSafe for InputDevice
Blanket Implementations§
§impl<T> Body for Twhere
T: Persistable,
impl<T> Body for Twhere
T: Persistable,
§type MarkerAtTopLevel = T
type MarkerAtTopLevel = T
The marker type to use when the body is at the top-level.
§type MarkerInResultUnion = T
type MarkerInResultUnion = T
The marker type to use when the body is nested in a result union.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)