Struct esp_idf_svc::hal::sys::i2s_event_callbacks_t

source ·
#[repr(C)]
pub struct i2s_event_callbacks_t { pub on_recv: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>, pub on_recv_q_ovf: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>, pub on_sent: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>, pub on_send_q_ovf: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>, }
Expand description

@brief Group of I2S callbacks @note The callbacks are all running under ISR environment @note When CONFIG_I2S_ISR_IRAM_SAFE is enabled, the callback itself and functions called by it should be placed in IRAM. The variables used in the function should be in the SRAM as well.

Fields§

§on_recv: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>

< Callback of data received event, only for RX channel The event data includes DMA buffer address and size that just finished receiving data

§on_recv_q_ovf: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>

< Callback of receiving queue overflowed event, only for RX channel The event data includes buffer size that has been overwritten

§on_sent: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>

< Callback of data sent event, only for TX channel The event data includes DMA buffer address and size that just finished sending data

§on_send_q_ovf: Option<unsafe extern "C" fn(_: *mut i2s_channel_obj_t, _: *mut i2s_event_data_t, _: *mut c_void) -> bool>

< Callback of sending queue overflowed event, only for TX channel The event data includes buffer size that has been overwritten

Trait Implementations§

source§

impl Clone for i2s_event_callbacks_t

source§

fn clone(&self) -> i2s_event_callbacks_t

Returns a copy 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 i2s_event_callbacks_t

source§

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

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

impl Default for i2s_event_callbacks_t

source§

fn default() -> i2s_event_callbacks_t

Returns the “default value” for a type. Read more
source§

impl Copy for i2s_event_callbacks_t

Auto Trait Implementations§

§

impl Freeze for i2s_event_callbacks_t

§

impl RefUnwindSafe for i2s_event_callbacks_t

§

impl Send for i2s_event_callbacks_t

§

impl Sync for i2s_event_callbacks_t

§

impl Unpin for i2s_event_callbacks_t

§

impl UnwindSafe for i2s_event_callbacks_t

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,

§

default unsafe fn clone_to_uninit(&self, dst: *mut T)

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

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

§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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, 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.