1 /**
2  * @file lv_uefi_context.h
3  *
4  */
5 
6 #ifndef __LV_UEFI_CONTEXT_H__
7 #define __LV_UEFI_CONTEXT_H__
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 /*********************
14  *      INCLUDES
15  *********************/
16 
17 #include "../../lvgl.h"
18 
19 #if LV_USE_UEFI
20 
21 #include "lv_uefi.h"
22 
23 /*********************
24  *      DEFINES
25  *********************/
26 
27 /**********************
28  *      TYPEDEFS
29  **********************/
30 
31 /**********************
32  * GLOBAL PROTOTYPES
33  **********************/
34 
35 /**
36  * @brief Initialize the UEFI chache variables.
37  * @param image_handle The handle of the current image
38  * @param system_table Pointer to the system table
39  * @remark This has to be called before lv_init().
40 */
41 void lv_uefi_init(
42     EFI_HANDLE image_handle,
43     EFI_SYSTEM_TABLE * system_table);
44 
45 /**
46  * @brief Initialize the LVGL UEFI backend.
47  * @remark This is a private API which is used for LVGL UEFI backend
48  *         implementation. LVGL users shouldn't use that because the
49  *         LVGL has already used it in lv_init.
50 */
51 void lv_uefi_platform_init(void);
52 
53 /**
54  * @brief Cleanup the LVGL UEFI backend.
55  * @remark This is a private API which is used for LVGL UEFI backend
56  *         implementation. LVGL users shouldn't use that because the
57  *         LVGL has already used it in lv_deinit.
58 */
59 void lv_uefi_platform_deinit(void);
60 
61 /**********************
62  *      MACROS
63  **********************/
64 
65 #endif
66 
67 #ifdef __cplusplus
68 }
69 #endif
70 
71 #endif //__LV_UEFI_CONTEXT_H__