idfxx 1.0.0
Modern C++23 components for ESP-IDF
Loading...
Searching...
No Matches
idfxx::lcd::panel_io Class Reference

SPI-based panel I/O interface. More...

Classes

struct  spi_config
 SPI-based panel I/O configuration. More...
 

Public Types

typedef std::move_only_function< bool(esp_lcd_panel_io_event_data_t *edata)> color_transfer_done_callback
 Callback type invoked when color data transfer has finished.
 

Public Member Functions

 panel_io (std::shared_ptr< idfxx::spi::master_bus > spi_bus, spi_config config)
 Creates a new panel I/O interface.
 
 ~panel_io ()
 
 panel_io (const panel_io &)=delete
 
panel_iooperator= (const panel_io &)=delete
 
 panel_io (panel_io &&)=delete
 
panel_iooperator= (panel_io &&)=delete
 
esp_lcd_panel_io_handle_t idf_handle () const
 Returns the underlying ESP-IDF handle.
 

Static Public Member Functions

static result< std::unique_ptr< panel_io > > make (std::shared_ptr< idfxx::spi::master_bus > spi_bus, spi_config config)
 Creates a new panel I/O interface.
 

Detailed Description

SPI-based panel I/O interface.

Provides the communication layer for LCD panels and touch controllers that use SPI.

Definition at line 42 of file panel_io.hpp.

Member Typedef Documentation

◆ color_transfer_done_callback

typedef std::move_only_function<bool(esp_lcd_panel_io_event_data_t* edata)> idfxx::lcd::panel_io::color_transfer_done_callback

Callback type invoked when color data transfer has finished.

Parameters
edataPanel IO event data.
Returns
Whether a high priority task has been woken up by this function.

Definition at line 50 of file panel_io.hpp.

Constructor & Destructor Documentation

◆ panel_io() [1/3]

idfxx::lcd::panel_io::panel_io ( std::shared_ptr< idfxx::spi::master_bus spi_bus,
spi_config  config 
)
explicit

Creates a new panel I/O interface.

Parameters
spi_busThe SPI bus.
configPanel I/O configuration.
Note
Only available when CONFIG_COMPILER_CXX_EXCEPTIONS is enabled in menuconfig.
Exceptions
std::system_erroron failure.

◆ ~panel_io()

idfxx::lcd::panel_io::~panel_io ( )

◆ panel_io() [2/3]

idfxx::lcd::panel_io::panel_io ( const panel_io )
delete

◆ panel_io() [3/3]

idfxx::lcd::panel_io::panel_io ( panel_io &&  )
delete

Member Function Documentation

◆ idf_handle()

esp_lcd_panel_io_handle_t idfxx::lcd::panel_io::idf_handle ( ) const
inline

Returns the underlying ESP-IDF handle.

Definition at line 115 of file panel_io.hpp.

◆ make()

static result< std::unique_ptr< panel_io > > idfxx::lcd::panel_io::make ( std::shared_ptr< idfxx::spi::master_bus spi_bus,
spi_config  config 
)
static

Creates a new panel I/O interface.

Parameters
spi_busThe SPI bus.
configPanel I/O configuration.
Returns
The new panel_io, or an error.

◆ operator=() [1/2]

panel_io & idfxx::lcd::panel_io::operator= ( const panel_io )
delete

◆ operator=() [2/2]

panel_io & idfxx::lcd::panel_io::operator= ( panel_io &&  )
delete

The documentation for this class was generated from the following file: