#[repr(C)]pub struct PciDeviceInfo {
pub address: PciAddress,
pub vendor_id: VendorId,
pub device_id: DeviceId,
pub revision: DeviceRevision,
pub class: BaseClass,
pub sub_class: SubClass,
pub interface: Interface,
pub bars: [Option<Bar>; 6],
pub interrupt: Option<Handle>,
}
Fields§
§address: PciAddress
§vendor_id: VendorId
The ID of the manufacturer of the device. These are allocated by PCI SIG.
device_id: DeviceId
The ID of the particular device. These are allocated by the vendor.
revision: DeviceRevision
A device-specific revision identifier. These are chosen by the vendor, and should be thought of as a vendor-defined extension of the device ID.
class: BaseClass
The upper byte of the class-code. This identifies the Base Class of the device.
sub_class: SubClass
The middle byte of the class-code. This identifies the Sub Class of the device.
interface: Interface
The lower byte of the class-code. This may indicate a specific register-level programming interface of the device.
bars: [Option<Bar>; 6]
§interrupt: Option<Handle>
A handle to an Event
that is signalled when this PCI device issues an interrupt.
Trait Implementations§
Source§impl Debug for PciDeviceInfo
impl Debug for PciDeviceInfo
Source§impl Default for PciDeviceInfo
impl Default for PciDeviceInfo
Source§fn default() -> PciDeviceInfo
fn default() -> PciDeviceInfo
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PciDeviceInfo
impl RefUnwindSafe for PciDeviceInfo
impl Send for PciDeviceInfo
impl Sync for PciDeviceInfo
impl Unpin for PciDeviceInfo
impl UnwindSafe for PciDeviceInfo
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
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can then be
further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§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<dyn Any>
. Rc<dyn Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Anydyn Any
. This is needed since Rust cannot
generate &Anydyn Any
’s vtable from &Trait
’s.Source§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 &Anydyn Any
. This is needed since Rust cannot
generate &mut dyn Any
’s vtable from &mut Trait
’s.