Struct zircon_object::dev::Interrupt[][src]

pub struct Interrupt { /* fields omitted */ }

Interrupts - Usermode I/O interrupt delivery.

SYNOPSIS

Interrupt objects allow userspace to create, signal, and wait on hardware interrupts.

Implementations

impl Interrupt[src]

pub fn new_virtual() -> Arc<Self>[src]

Create a new virtual interrupt.

pub fn new_physical(
    vector: usize,
    options: InterruptOptions
) -> ZxResult<Arc<Self>>
[src]

Create a new physical interrupt.

pub fn new_pci(
    device: Arc<dyn IPciNode>,
    vector: u32,
    maskable: bool
) -> ZxResult<Arc<Self>>
[src]

Create a new PCI interrupt.

pub fn bind(&self, port: &Arc<Port>, key: u64) -> ZxResult[src]

Bind the interrupt object to a port.

pub fn unbind(&self, port: &Arc<Port>) -> ZxResult[src]

Unbind the interrupt object from a port.

Unbinding the port removes previously queued packets to the port.

pub fn trigger(&self, timestamp: i64) -> ZxResult[src]

Triggers a virtual interrupt object.

pub fn ack(&self) -> ZxResult[src]

Acknowledge the interrupt and re-arm it.

pub fn destroy(&self) -> ZxResult[src]

Destroy the interrupt.

pub async fn wait(self: &Arc<Self>) -> ZxResult<i64>[src]

Wait until the interrupt is triggered.

Trait Implementations

impl Debug for Interrupt[src]

impl Drop for Interrupt[src]

impl KernelObject for Interrupt[src]

Auto Trait Implementations

impl !RefUnwindSafe for Interrupt

impl Send for Interrupt

impl Sync for Interrupt

impl Unpin for Interrupt

impl !UnwindSafe for Interrupt

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any
[src]

impl<T> DowncastSync for T where
    T: Send + Sync + Any
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.