improvements to apps and drivers
This commit is contained in:
@@ -21,13 +21,13 @@ enum nb_app_type {
|
||||
USER
|
||||
};
|
||||
|
||||
typedef struct nb_app_config nb_app_config_t;
|
||||
typedef struct nb_app nb_app_t;
|
||||
|
||||
typedef void (*nb_app_callback_on_create) (nb_platform_t* platform, lv_obj_t* lv_parent);
|
||||
typedef void (*nb_app_callback_update) (nb_platform_t* platform, lv_obj_t* lv_parent);
|
||||
typedef void (*nb_app_callback_on_destroy) (nb_platform_t* platform);
|
||||
|
||||
struct nb_app_config {
|
||||
struct nb_app {
|
||||
char id[NB_APP_ID_LENGTH];
|
||||
char name[NB_APP_NAME_LENGTH];
|
||||
nb_app_type_t type;
|
||||
@@ -38,12 +38,12 @@ struct nb_app_config {
|
||||
uint32_t update_task_priority;
|
||||
};
|
||||
|
||||
typedef struct nb_app nb_app_t;
|
||||
typedef struct nb_app_instance nb_app_instance_t;
|
||||
|
||||
struct nb_app {
|
||||
nb_app_config_t config;
|
||||
struct nb_app_instance {
|
||||
nb_app_t config;
|
||||
};
|
||||
|
||||
esp_err_t nb_app_config_validate(nb_app_config_t* _Nonnull app);
|
||||
esp_err_t nb_app_validate(nb_app_t* _Nonnull app);
|
||||
|
||||
#endif //NANOBAKE_NB_APP_H
|
||||
|
||||
@@ -18,7 +18,7 @@ typedef struct nb_display_driver nb_display_driver_t;
|
||||
|
||||
struct nb_display_driver {
|
||||
char name[32];
|
||||
esp_err_t (*create_display)(nb_display_t* display);
|
||||
bool (*create_display)(nb_display_t* display);
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -10,8 +10,6 @@
|
||||
typedef nb_touch_driver_t (*create_touch_driver)();
|
||||
typedef nb_display_driver_t (*create_display_driver)();
|
||||
|
||||
typedef nb_app_config_t (*create_app)();
|
||||
|
||||
typedef struct nb_platform_config nb_platform_config_t;
|
||||
struct nb_platform_config {
|
||||
// Required driver for display
|
||||
@@ -19,7 +17,7 @@ struct nb_platform_config {
|
||||
// Optional driver for touch input
|
||||
create_touch_driver _Nullable touch_driver;
|
||||
// List of user applications
|
||||
create_app apps[];
|
||||
nb_app_t* apps[];
|
||||
};
|
||||
|
||||
typedef struct nb_lvgl nb_lvgl_t;
|
||||
|
||||
@@ -8,8 +8,7 @@ typedef struct nb_touch_driver nb_touch_driver_t;
|
||||
|
||||
struct nb_touch_driver {
|
||||
char name[32];
|
||||
esp_err_t (*init_io)(esp_lcd_panel_io_handle_t* io_handle);
|
||||
esp_err_t (*create_touch)(esp_lcd_panel_io_handle_t io_handle, esp_lcd_touch_handle_t* touch_handle);
|
||||
bool (*create_touch)(esp_lcd_panel_io_handle_t* io_handle, esp_lcd_touch_handle_t* touch_handle);
|
||||
};
|
||||
|
||||
typedef struct nb_touch nb_touch_t;
|
||||
|
||||
Reference in New Issue
Block a user