1 /**
2  * @file lvgl.h
3  * Include all LVGL related headers
4  */
5 
6 #ifndef LVGL_H
7 #define LVGL_H
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 /***************************
14  * CURRENT VERSION OF LVGL
15  ***************************/
16 #include "lv_version.h"
17 
18 /*********************
19  *      INCLUDES
20  *********************/
21 #include "src/lv_init.h"
22 
23 #include "src/stdlib/lv_mem.h"
24 #include "src/stdlib/lv_string.h"
25 #include "src/stdlib/lv_sprintf.h"
26 
27 #include "src/misc/lv_log.h"
28 #include "src/misc/lv_timer.h"
29 #include "src/misc/lv_math.h"
30 #include "src/misc/lv_array.h"
31 #include "src/misc/lv_async.h"
32 #include "src/misc/lv_anim_timeline.h"
33 #include "src/misc/lv_profiler_builtin.h"
34 #include "src/misc/lv_rb.h"
35 #include "src/misc/lv_utils.h"
36 #include "src/misc/lv_iter.h"
37 #include "src/misc/lv_circle_buf.h"
38 #include "src/misc/lv_tree.h"
39 #include "src/misc/cache/lv_image_cache.h"
40 
41 #include "src/tick/lv_tick.h"
42 
43 #include "src/core/lv_obj.h"
44 #include "src/core/lv_group.h"
45 #include "src/indev/lv_indev.h"
46 #include "src/indev/lv_indev_gesture.h"
47 #include "src/core/lv_refr.h"
48 #include "src/display/lv_display.h"
49 
50 #include "src/font/lv_font.h"
51 #include "src/font/lv_binfont_loader.h"
52 #include "src/font/lv_font_fmt_txt.h"
53 
54 #include "src/widgets/animimage/lv_animimage.h"
55 #include "src/widgets/arc/lv_arc.h"
56 #include "src/widgets/bar/lv_bar.h"
57 #include "src/widgets/button/lv_button.h"
58 #include "src/widgets/buttonmatrix/lv_buttonmatrix.h"
59 #include "src/widgets/calendar/lv_calendar.h"
60 #include "src/widgets/canvas/lv_canvas.h"
61 #include "src/widgets/chart/lv_chart.h"
62 #include "src/widgets/checkbox/lv_checkbox.h"
63 #include "src/widgets/dropdown/lv_dropdown.h"
64 #include "src/widgets/image/lv_image.h"
65 #include "src/widgets/imagebutton/lv_imagebutton.h"
66 #include "src/widgets/keyboard/lv_keyboard.h"
67 #include "src/widgets/label/lv_label.h"
68 #include "src/widgets/led/lv_led.h"
69 #include "src/widgets/line/lv_line.h"
70 #include "src/widgets/list/lv_list.h"
71 #include "src/widgets/lottie/lv_lottie.h"
72 #include "src/widgets/menu/lv_menu.h"
73 #include "src/widgets/msgbox/lv_msgbox.h"
74 #include "src/widgets/roller/lv_roller.h"
75 #include "src/widgets/scale/lv_scale.h"
76 #include "src/widgets/slider/lv_slider.h"
77 #include "src/widgets/span/lv_span.h"
78 #include "src/widgets/spinbox/lv_spinbox.h"
79 #include "src/widgets/spinner/lv_spinner.h"
80 #include "src/widgets/switch/lv_switch.h"
81 #include "src/widgets/table/lv_table.h"
82 #include "src/widgets/tabview/lv_tabview.h"
83 #include "src/widgets/textarea/lv_textarea.h"
84 #include "src/widgets/tileview/lv_tileview.h"
85 #include "src/widgets/win/lv_win.h"
86 
87 #include "src/others/snapshot/lv_snapshot.h"
88 #include "src/others/sysmon/lv_sysmon.h"
89 #include "src/others/monkey/lv_monkey.h"
90 #include "src/others/gridnav/lv_gridnav.h"
91 #include "src/others/fragment/lv_fragment.h"
92 #include "src/others/imgfont/lv_imgfont.h"
93 #include "src/others/observer/lv_observer.h"
94 #include "src/others/ime/lv_ime_pinyin.h"
95 #include "src/others/file_explorer/lv_file_explorer.h"
96 #include "src/others/font_manager/lv_font_manager.h"
97 #include "src/others/xml/lv_xml.h"
98 #include "src/others/xml/lv_xml_component.h"
99 
100 #include "src/libs/barcode/lv_barcode.h"
101 #include "src/libs/bin_decoder/lv_bin_decoder.h"
102 #include "src/libs/bmp/lv_bmp.h"
103 #include "src/libs/rle/lv_rle.h"
104 #include "src/libs/fsdrv/lv_fsdrv.h"
105 #include "src/libs/lodepng/lv_lodepng.h"
106 #include "src/libs/libpng/lv_libpng.h"
107 #include "src/libs/gif/lv_gif.h"
108 #include "src/libs/qrcode/lv_qrcode.h"
109 #include "src/libs/tjpgd/lv_tjpgd.h"
110 #include "src/libs/libjpeg_turbo/lv_libjpeg_turbo.h"
111 #include "src/libs/freetype/lv_freetype.h"
112 #include "src/libs/rlottie/lv_rlottie.h"
113 #include "src/libs/ffmpeg/lv_ffmpeg.h"
114 #include "src/libs/tiny_ttf/lv_tiny_ttf.h"
115 #include "src/libs/svg/lv_svg.h"
116 #include "src/libs/svg/lv_svg_render.h"
117 
118 #include "src/layouts/lv_layout.h"
119 
120 #include "src/draw/lv_draw_buf.h"
121 #include "src/draw/lv_draw_vector.h"
122 #include "src/draw/sw/lv_draw_sw_utils.h"
123 
124 #include "src/themes/lv_theme.h"
125 
126 #include "src/drivers/lv_drivers.h"
127 
128 #include "src/lv_api_map_v8.h"
129 #include "src/lv_api_map_v9_0.h"
130 #include "src/lv_api_map_v9_1.h"
131 
132 #if LV_USE_PRIVATE_API
133 #include "src/lvgl_private.h"
134 #endif
135 
136 
137 /*********************
138  *      DEFINES
139  *********************/
140 
141 /**********************
142  *      TYPEDEFS
143  **********************/
144 
145 /**********************
146  * GLOBAL PROTOTYPES
147  **********************/
148 
149 /**********************
150  *      MACROS
151  **********************/
152 
153 /** Gives 1 if the x.y.z version is supported in the current version
154  * Usage:
155  *
156  * - Require v6
157  * #if LV_VERSION_CHECK(6,0,0)
158  *   new_func_in_v6();
159  * #endif
160  *
161  *
162  * - Require at least v5.3
163  * #if LV_VERSION_CHECK(5,3,0)
164  *   new_feature_from_v5_3();
165  * #endif
166  *
167  *
168  * - Require v5.3.2 bugfixes
169  * #if LV_VERSION_CHECK(5,3,2)
170  *   bugfix_in_v5_3_2();
171  * #endif
172  *
173  */
174 #define LV_VERSION_CHECK(x,y,z) (x == LVGL_VERSION_MAJOR && (y < LVGL_VERSION_MINOR || (y == LVGL_VERSION_MINOR && z <= LVGL_VERSION_PATCH)))
175 
176 /**
177  * Wrapper functions for VERSION macros
178  */
179 
lv_version_major(void)180 static inline int lv_version_major(void)
181 {
182     return LVGL_VERSION_MAJOR;
183 }
184 
lv_version_minor(void)185 static inline int lv_version_minor(void)
186 {
187     return LVGL_VERSION_MINOR;
188 }
189 
lv_version_patch(void)190 static inline int lv_version_patch(void)
191 {
192     return LVGL_VERSION_PATCH;
193 }
194 
lv_version_info(void)195 static inline const char * lv_version_info(void)
196 {
197     return LVGL_VERSION_INFO;
198 }
199 
200 #ifdef __cplusplus
201 } /*extern "C"*/
202 #endif
203 
204 #endif /*LVGL_H*/
205