lv_vdb.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /**
  2. * @file lv_vdb.h
  3. *
  4. */
  5. #ifndef LV_VDB_H
  6. #define LV_VDB_H
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. /*********************
  11. * INCLUDES
  12. *********************/
  13. #include "../../lv_conf.h"
  14. #if LV_VDB_SIZE != 0
  15. #include "../lv_misc/lv_color.h"
  16. #include "../lv_misc/lv_area.h"
  17. /*********************
  18. * DEFINES
  19. *********************/
  20. /**********************
  21. * TYPEDEFS
  22. **********************/
  23. typedef struct
  24. {
  25. lv_area_t area;
  26. lv_color_t *buf;
  27. }lv_vdb_t;
  28. /**********************
  29. * GLOBAL PROTOTYPES
  30. **********************/
  31. /**
  32. * Get the 'vdb' variable or allocate one in LV_VDB_DOUBLE mode
  33. * @return pointer to a 'vdb' variable
  34. */
  35. lv_vdb_t * lv_vdb_get(void);
  36. /**
  37. * Flush the content of the vdb
  38. */
  39. void lv_vdb_flush(void);
  40. /**
  41. * In 'LV_VDB_DOUBLE' mode has to be called when 'disp_map()'
  42. * is ready with copying the map to a frame buffer.
  43. */
  44. void lv_flush_ready(void);
  45. /**********************
  46. * MACROS
  47. **********************/
  48. #else /*LV_VDB_SIZE != 0*/
  49. /*Just for compatibility*/
  50. void lv_flush_ready(void);
  51. #endif
  52. #ifdef __cplusplus
  53. } /* extern "C" */
  54. #endif
  55. #endif /*LV_VDB_H*/