mirror of
https://github.com/lvgl/lvgl.git
synced 2025-01-14 06:42:58 +08:00
80 lines
1.3 KiB
C
80 lines
1.3 KiB
C
/**
|
|
* @file lv_vdb.h
|
|
*
|
|
*/
|
|
|
|
#ifndef LV_VDB_H
|
|
#define LV_VDB_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/*********************
|
|
* INCLUDES
|
|
*********************/
|
|
#ifdef LV_CONF_INCLUDE_SIMPLE
|
|
#include "lv_conf.h"
|
|
#else
|
|
#include "../../lv_conf.h"
|
|
#endif
|
|
|
|
#if LV_VDB_SIZE != 0
|
|
|
|
#include "../lv_misc/lv_color.h"
|
|
#include "../lv_misc/lv_area.h"
|
|
|
|
/*********************
|
|
* DEFINES
|
|
*********************/
|
|
|
|
#ifndef LV_VDB_PX_BPP
|
|
#warning "LV_VDB_PX_BPP is not specified in lv_conf.h. Use the default value (LV_COLOR_SIZE)"
|
|
#define LV_VDB_PX_BPP LV_COLOR_SIZE
|
|
#endif
|
|
/**********************
|
|
* TYPEDEFS
|
|
**********************/
|
|
|
|
typedef struct
|
|
{
|
|
lv_area_t area;
|
|
lv_color_t *buf;
|
|
} lv_vdb_t;
|
|
|
|
/**********************
|
|
* GLOBAL PROTOTYPES
|
|
**********************/
|
|
|
|
/**
|
|
* Get the 'vdb' variable or allocate one in LV_VDB_DOUBLE mode
|
|
* @return pointer to a 'vdb' variable
|
|
*/
|
|
lv_vdb_t * lv_vdb_get(void);
|
|
|
|
/**
|
|
* Flush the content of the vdb
|
|
*/
|
|
void lv_vdb_flush(void);
|
|
|
|
/**
|
|
* Call in the display driver's 'disp_flush' function when the flushing is finished
|
|
*/
|
|
void lv_flush_ready(void);
|
|
|
|
/**********************
|
|
* MACROS
|
|
**********************/
|
|
|
|
#else /*LV_VDB_SIZE != 0*/
|
|
|
|
/*Just for compatibility*/
|
|
void lv_flush_ready(void);
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
} /* extern "C" */
|
|
#endif
|
|
|
|
#endif /*LV_VDB_H*/
|