⚠️ VeridianOS Kernel Documentation - This is low-level kernel code. All functions are unsafe unless explicitly marked otherwise. no_std

AlsaError

Enum AlsaError 

Source
pub enum AlsaError {
Show 20 variants DeviceNotFound { device_id: u32, }, DeviceAlreadyOpen { device_id: u32, }, DeviceNotOpen { device_id: u32, }, InvalidStateTransition { current: PcmState, requested: PcmState, }, HwParamsNotSet, SwParamsNotSet, Overrun { lost_frames: u32, }, Underrun { missed_frames: u32, }, InvalidFormat, InvalidSampleRate { rate: u32, }, InvalidChannels { count: u8, }, InvalidBufferSize { requested: u32, max: u32, }, InvalidPeriodSize { requested: u32, buffer_size: u32, }, BufferFull, BufferEmpty, MixerControlNotFound { id: u32, }, MixerValueOutOfRange { value: i32, min: i32, max: i32, }, TooManyDevices, WrongDirection, DeviceBusy { device_id: u32, },
}
Expand description

ALSA subsystem error type

Variants§

§

DeviceNotFound

Device not found

Fields

§device_id: u32
§

DeviceAlreadyOpen

Device is already open

Fields

§device_id: u32
§

DeviceNotOpen

Device is not open

Fields

§device_id: u32
§

InvalidStateTransition

Invalid PCM state transition

Fields

§current: PcmState
§requested: PcmState
§

HwParamsNotSet

Hardware parameters not configured

§

SwParamsNotSet

Software parameters not configured

§

Overrun

Buffer overrun (capture) – data was lost

Fields

§lost_frames: u32
§

Underrun

Buffer underrun (playback) – device starved

Fields

§missed_frames: u32
§

InvalidFormat

Invalid sample format

§

InvalidSampleRate

Invalid sample rate

Fields

§rate: u32
§

InvalidChannels

Invalid channel count

Fields

§count: u8
§

InvalidBufferSize

Invalid buffer size

Fields

§requested: u32
§max: u32
§

InvalidPeriodSize

Invalid period size

Fields

§requested: u32
§buffer_size: u32
§

BufferFull

Buffer is full (write would block)

§

BufferEmpty

Buffer is empty (read would block)

§

MixerControlNotFound

Mixer control not found

Fields

§id: u32
§

MixerValueOutOfRange

Value out of range for mixer control

Fields

§value: i32
§min: i32
§max: i32
§

TooManyDevices

Maximum device limit reached

§

WrongDirection

Operation not supported for this stream direction

§

DeviceBusy

Device busy (in use by another client)

Fields

§device_id: u32

Trait Implementations§

Source§

impl Clone for AlsaError

Source§

fn clone(&self) -> AlsaError

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AlsaError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for AlsaError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<AlsaError> for AudioError

Source§

fn from(err: AlsaError) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for AlsaError

Source§

fn eq(&self, other: &AlsaError) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for AlsaError

Source§

impl Eq for AlsaError

Source§

impl StructuralPartialEq for AlsaError

Auto Trait Implementations§

§

impl Freeze for AlsaError

§

impl RefUnwindSafe for AlsaError

§

impl Send for AlsaError

§

impl Sync for AlsaError

§

impl Unpin for AlsaError

§

impl UnwindSafe for AlsaError

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T> ToString for T
where T: Display + ?Sized,

§

fn to_string(&self) -> String

Converts the given value to a String. Read more
§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.