1 /**
2  * @file lv_nuttx_libuv.h
3  *
4  */
5 
6 #ifndef LV_NUTTX_LIBUV_H
7 #define LV_NUTTX_LIBUV_H
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 /*********************
14  *      INCLUDES
15  *********************/
16 
17 #include "../../display/lv_display.h"
18 #include "../../indev/lv_indev.h"
19 
20 #if LV_USE_NUTTX
21 
22 #if LV_USE_NUTTX_LIBUV
23 
24 /*********************
25  *      DEFINES
26  *********************/
27 
28 /**********************
29  *      TYPEDEFS
30  **********************/
31 
32 typedef struct {
33     void * loop;
34     lv_display_t * disp;
35     lv_indev_t * indev;
36 } lv_nuttx_uv_t;
37 
38 /**********************
39  * GLOBAL PROTOTYPES
40  **********************/
41 
42 /**
43  * Initialize the uv_loop using the provided configuration information.
44  * @param uv_info Pointer to the lv_nuttx_uv_t structure to be initialized.
45  */
46 void * lv_nuttx_uv_init(lv_nuttx_uv_t * uv_info);
47 
48 /**
49  * Deinitialize the uv_loop configuration for NuttX porting layer.
50  * @param data Pointer to user data.
51  */
52 void lv_nuttx_uv_deinit(void ** data);
53 
54 /**********************
55  *      MACROS
56  **********************/
57 
58 #endif /*LV_USE_NUTTX_LIBUV*/
59 
60 #endif /*LV_USE_NUTTX*/
61 
62 #ifdef __cplusplus
63 } /* extern "C" */
64 #endif
65 
66 #endif /*LV_NUTTX_LIBUV_H*/
67