microvg  3.0.1
microvg
LLVG_impl.c
Go to the documentation of this file.
1 /*
2  * C
3  *
4  * Copyright 2022-2023 MicroEJ Corp. All rights reserved.
5  * Use of this source code is governed by a BSD-style license that can be found with this software.
6  */
7 
15 // -----------------------------------------------------------------------------
16 // Includes
17 // -----------------------------------------------------------------------------
18 
19 #include <LLVG_impl.h>
20 #include <LLUI_DISPLAY.h>
21 
22 #include "microvg_configuration.h"
23 #include "microvg_helper.h"
24 #include "microvg_font_freetype.h"
25 #include "microvg_path.h"
26 #include "microvg_trace.h"
27 
28 // -----------------------------------------------------------------------------
29 // Defines
30 // -----------------------------------------------------------------------------
31 
32 #if (defined(LLVG_MAJOR_VERSION) && (LLVG_MAJOR_VERSION != 1)) || (defined(LLVG_MINOR_VERSION) && (LLVG_MINOR_VERSION < 3))
33 #error "This CCO is only compatible with VG Pack [1.3.0,2.0.0["
34 #endif
35 
36 // -----------------------------------------------------------------------------
37 // Globals
38 // -----------------------------------------------------------------------------
39 
40 /*
41  * microvg_trace.h logs group identifier
42  */
43 int32_t vg_trace_group_id;
44 
45 // -----------------------------------------------------------------------------
46 // LLVG_impl.h functions
47 // -----------------------------------------------------------------------------
48 
49 // See the header file for the function documentation
50 void LLVG_IMPL_initialize(void) {
51 
52  vg_trace_group_id = LLTRACE_IMPL_declare_event_group("MicroVG", LOG_MICROVG_EVENTS);
53 
54  MICROVG_HELPER_initialize();
55 
56 #if defined VG_FEATURE_FONT && \
57  (defined VG_FEATURE_FONT_FREETYPE_VECTOR || defined VG_FEATURE_FONT_FREETYPE_BITMAP) && \
58  (VG_FEATURE_FONT == VG_FEATURE_FONT_FREETYPE_VECTOR || VG_FEATURE_FONT == VG_FEATURE_FONT_FREETYPE_BITMAP)
59 
60  MICROVG_FONT_FREETYPE_initialize();
61 #endif
62 
63  MICROVG_PATH_initialize();
64 }
65 
MicroEJ MicroVG library low level API: helper to implement library natives methods.
MicroEJ MicroVG library low level API: implementation of Path.
MicroEJ MicroVG library low level API: implementation over FreeType.
MicroEJ MicroVG library low level API: enable some features according to the hardware capacities...