1
0
mirror of https://github.com/lvgl/lvgl.git synced 2025-01-21 06:53:01 +08:00
lvgl/lv_core/lv_refr.h

91 lines
1.9 KiB
C
Raw Normal View History

2016-06-08 07:25:08 +02:00
/**
* @file lv_refr.h
2018-06-19 09:49:58 +02:00
*
2016-06-08 07:25:08 +02:00
*/
2017-07-09 15:32:49 +02:00
#ifndef LV_REFR_H
#define LV_REFR_H
#ifdef __cplusplus
extern "C" {
#endif
2016-06-08 07:25:08 +02:00
/*********************
* INCLUDES
*********************/
#include "lv_obj.h"
#include <stdbool.h>
/*********************
* DEFINES
*********************/
/**********************
* TYPEDEFS
**********************/
/**********************
* STATIC PROTOTYPES
**********************/
/**********************
* STATIC VARIABLES
**********************/
/**********************
* MACROS
**********************/
/**********************
* GLOBAL FUNCTIONS
**********************/
/**
* Initialize the screen refresh subsystem
*/
2016-06-08 07:25:08 +02:00
void lv_refr_init(void);
2018-09-20 21:59:44 +02:00
/**
* Redraw the invalidated areas now.
2018-12-26 07:58:06 +01:00
* Normally the redrawing is periodically executed in `lv_task_handler` but a long blocking process can
2018-09-20 21:59:44 +02:00
* prevent the call of `lv_task_handler`. In this case if the the GUI is updated in the process (e.g. progress bar)
2018-12-26 07:58:06 +01:00
* this function can be called when the screen should be updated.
2018-09-20 21:59:44 +02:00
*/
void lv_refr_now(void);
/**
* Invalidate an area on display to redraw it
* @param area_p pointer to area which should be invalidated (NULL: delete the invalidated areas)
* @param disp pointer to display where the area should be invalidated (NULL can be used if there is only one display)
*/
void lv_inv_area(lv_disp_t * disp, const lv_area_t * area_p);
2016-06-08 07:25:08 +02:00
/**
* Get the number of areas in the buffer
* @return number of invalid areas
*/
uint16_t lv_refr_get_buf_size(void);
/**
* Pop (delete) the last 'num' invalidated areas from the buffer
* @param num number of areas to delete
*/
void lv_refr_pop_from_buf(uint16_t num);
2019-02-12 12:21:34 +01:00
/**
* Get the display which is being refreshed
* @return the display being refreshed
*/
lv_disp_t * lv_refr_get_disp_refreshing(void);
2016-06-08 07:25:08 +02:00
/**********************
* STATIC FUNCTIONS
**********************/
2017-07-09 15:32:49 +02:00
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /*LV_REFR_H*/