Struct esp_idf_sys::esp_lcd_panel_io_t

source ·
#[repr(C)]
pub struct esp_lcd_panel_io_t { pub rx_param: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, lcd_cmd: c_int, param: *mut c_void, param_size: usize) -> esp_err_t>, pub tx_param: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, lcd_cmd: c_int, param: *const c_void, param_size: usize) -> esp_err_t>, pub tx_color: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, lcd_cmd: c_int, color: *const c_void, color_size: usize) -> esp_err_t>, pub del: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t) -> esp_err_t>, pub register_event_callbacks: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, cbs: *const esp_lcd_panel_io_callbacks_t, user_ctx: *mut c_void) -> esp_err_t>, }
Expand description

@brief LCD panel IO interface

Fields§

§rx_param: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, lcd_cmd: c_int, param: *mut c_void, param_size: usize) -> esp_err_t>

@brief Transmit LCD command and receive corresponding parameters

@note This is the panel-specific interface called by function esp_lcd_panel_io_rx_param().

@param[in] io LCD panel IO handle, which is created by other factory API like esp_lcd_new_panel_io_spi() @param[in] lcd_cmd The specific LCD command, set to -1 if no command needed @param[out] param Buffer for the command data @param[in] param_size Size of param buffer @return - ESP_ERR_INVALID_ARG if parameter is invalid - ESP_ERR_NOT_SUPPORTED if read is not supported by transport - ESP_OK on success

§tx_param: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, lcd_cmd: c_int, param: *const c_void, param_size: usize) -> esp_err_t>

@brief Transmit LCD command and corresponding parameters

@note This is the panel-specific interface called by function esp_lcd_panel_io_tx_param().

@param[in] io LCD panel IO handle, which is created by other factory API like esp_lcd_new_panel_io_spi() @param[in] lcd_cmd The specific LCD command @param[in] param Buffer that holds the command specific parameters, set to NULL if no parameter is needed for the command @param[in] param_size Size of param in memory, in bytes, set to zero if no parameter is needed for the command @return - ESP_ERR_INVALID_ARG if parameter is invalid - ESP_OK on success

§tx_color: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, lcd_cmd: c_int, color: *const c_void, color_size: usize) -> esp_err_t>

@brief Transmit LCD RGB data

@note This is the panel-specific interface called by function esp_lcd_panel_io_tx_color().

@param[in] io LCD panel IO handle, which is created by other factory API like esp_lcd_new_panel_io_spi() @param[in] lcd_cmd The specific LCD command @param[in] color Buffer that holds the RGB color data @param[in] color_size Size of color in memory, in bytes @return - ESP_ERR_INVALID_ARG if parameter is invalid - ESP_OK on success

§del: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t) -> esp_err_t>

@brief Destory LCD panel IO handle (deinitialize all and free resource)

@param[in] io LCD panel IO handle, which is created by other factory API like esp_lcd_new_panel_io_spi() @return - ESP_ERR_INVALID_ARG if parameter is invalid - ESP_OK on success

§register_event_callbacks: Option<unsafe extern "C" fn(io: *mut esp_lcd_panel_io_t, cbs: *const esp_lcd_panel_io_callbacks_t, user_ctx: *mut c_void) -> esp_err_t>

@brief Register LCD panel IO callbacks

@param[in] io LCD panel IO handle, which is created by factory API like esp_lcd_new_panel_io_spi() @param[in] cbs structure with all LCD panel IO callbacks @param[in] user_ctx User private data, passed directly to callback’s user_ctx @return - ESP_ERR_INVALID_ARG if parameter is invalid - ESP_OK on success

Trait Implementations§

source§

impl Clone for esp_lcd_panel_io_t

source§

fn clone(&self) -> esp_lcd_panel_io_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 esp_lcd_panel_io_t

source§

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

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

impl Default for esp_lcd_panel_io_t

source§

fn default() -> esp_lcd_panel_io_t

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

impl Copy for esp_lcd_panel_io_t

Auto Trait Implementations§

§

impl Freeze for esp_lcd_panel_io_t

§

impl RefUnwindSafe for esp_lcd_panel_io_t

§

impl Send for esp_lcd_panel_io_t

§

impl Sync for esp_lcd_panel_io_t

§

impl Unpin for esp_lcd_panel_io_t

§

impl UnwindSafe for esp_lcd_panel_io_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.