#[repr(C)]pub struct Trb {
data: [u8; 16],
}
Fields§
§data: [u8; 16]
Implementations§
source§impl Trb
impl Trb
pub fn get_parameter(&self) -> <B64 as BitFieldSpecifier>::GetterType
pub fn set_parameter(&mut self, val: <B64 as BitFieldSpecifier>::SetterType)
pub fn get_status(&self) -> <B32 as BitFieldSpecifier>::GetterType
pub fn set_status(&mut self, val: <B32 as BitFieldSpecifier>::SetterType)
pub fn get_cycle(&self) -> <bool as BitFieldSpecifier>::GetterType
pub fn set_cycle(&mut self, val: <bool as BitFieldSpecifier>::SetterType)
pub fn get_flags(&self) -> <B9 as BitFieldSpecifier>::GetterType
pub fn set_flags(&mut self, val: <B9 as BitFieldSpecifier>::SetterType)
pub fn get_trb_type(&self) -> <TrbType as BitFieldSpecifier>::GetterType
pub fn set_trb_type(&mut self, val: <TrbType as BitFieldSpecifier>::SetterType)
pub fn get_control(&self) -> <B16 as BitFieldSpecifier>::GetterType
pub fn set_control(&mut self, val: <B16 as BitFieldSpecifier>::SetterType)
source§impl Trb
impl Trb
sourcepub fn get_chain_bit(&self) -> Result<bool, Error>
pub fn get_chain_bit(&self) -> Result<bool, Error>
Get chain bit.
sourcepub fn interrupter_target(&self) -> u8
pub fn interrupter_target(&self) -> u8
Get interrupt target.
sourcepub fn can_be_in_transfer_ring(&self) -> Result<bool, Error>
pub fn can_be_in_transfer_ring(&self) -> Result<bool, Error>
Only some of trb types could appear in transfer ring.
sourcepub fn transfer_length(&self) -> Result<u32, Error>
pub fn transfer_length(&self) -> Result<u32, Error>
Length of this transfer.
sourcepub fn interrupt_on_completion(&self) -> bool
pub fn interrupt_on_completion(&self) -> bool
Returns true if interrupt is required on completion.
sourcepub fn interrupt_on_short_packet(&self) -> bool
pub fn interrupt_on_short_packet(&self) -> bool
Returns true if interrupt is required on transfer of short packet.
sourcepub fn immediate_data(&self) -> Result<bool, Error>
pub fn immediate_data(&self) -> Result<bool, Error>
Returns true if this trb is immediate data.
Trait Implementations§
source§impl AsBytes for Trb
impl AsBytes for Trb
§fn as_bytes_mut(&mut self) -> &mut [u8] ⓘwhere
Self: FromBytes,
fn as_bytes_mut(&mut self) -> &mut [u8] ⓘwhere
Self: FromBytes,
Gets the bytes of this value mutably. Read more
§fn write_to_prefix(&self, bytes: &mut [u8]) -> Option<()>
fn write_to_prefix(&self, bytes: &mut [u8]) -> Option<()>
source§impl FromBytes for Trb
impl FromBytes for Trb
§fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>where
Self: Sized,
fn slice_from_prefix(bytes: &[u8], count: usize) -> Option<(&[Self], &[u8])>where
Self: Sized,
Interprets the prefix of the given
bytes
as a &[Self]
with length
equal to count
without copying. Read more§fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>where
Self: Sized,
fn slice_from_suffix(bytes: &[u8], count: usize) -> Option<(&[u8], &[Self])>where
Self: Sized,
Interprets the suffix of the given
bytes
as a &[Self]
with length
equal to count
without copying. Read more§fn mut_slice_from_prefix(
bytes: &mut [u8],
count: usize
) -> Option<(&mut [Self], &mut [u8])>where
Self: Sized + AsBytes,
fn mut_slice_from_prefix(
bytes: &mut [u8],
count: usize
) -> Option<(&mut [Self], &mut [u8])>where
Self: Sized + AsBytes,
Interprets the prefix of the given
bytes
as a &mut [Self]
with length
equal to count
without copying. Read more§fn mut_slice_from_suffix(
bytes: &mut [u8],
count: usize
) -> Option<(&mut [u8], &mut [Self])>where
Self: Sized + AsBytes,
fn mut_slice_from_suffix(
bytes: &mut [u8],
count: usize
) -> Option<(&mut [u8], &mut [Self])>where
Self: Sized + AsBytes,
Interprets the suffix of the given
bytes
as a &mut [Self]
with length
equal to count
without copying. Read more§fn read_from_prefix(bytes: &[u8]) -> Option<Self>where
Self: Sized,
fn read_from_prefix(bytes: &[u8]) -> Option<Self>where
Self: Sized,
impl Copy for Trb
impl Eq for Trb
impl StructuralPartialEq for Trb
Auto Trait Implementations§
impl RefUnwindSafe for Trb
impl Send for Trb
impl Sync for Trb
impl Unpin for Trb
impl UnwindSafe for Trb
Blanket Implementations§
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.