-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathconfig_common.h.in
190 lines (158 loc) · 5.43 KB
/
config_common.h.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
/*
* Copyright 2020-2023 Toyota Connected North America
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef CONFIG_COMMON_H_
#define CONFIG_COMMON_H_
#include <EGL/egl.h>
#include <array>
#ifndef BUILD_BACKEND_WAYLAND_EGL
#cmakedefine01 BUILD_BACKEND_WAYLAND_EGL
#endif
#ifndef BUILD_BACKEND_WAYLAND_VULKAN
#cmakedefine01 BUILD_BACKEND_WAYLAND_VULKAN
#endif
#ifndef BUILD_BACKEND_WAYLAND_DRM_LEASED
#cmakedefine01 BUILD_BACKEND_WAYLAND_DRM_LEASED
#endif
#ifndef BUILD_BACKEND_DRM_KMS_EGL
#cmakedefine01 BUILD_BACKEND_DRM_KMS_EGL
#endif
#ifndef BUILD_BACKEND_DRM_KMS_VULKAN
#cmakedefine01 BUILD_BACKEND_DRM_KMS_VULKAN
#endif
#ifndef BUILD_BACKEND_HEADLESS_EGL
#cmakedefine01 BUILD_BACKEND_HEADLESS_EGL
#endif
#cmakedefine01 BUILD_EGL_TRANSPARENCY
#cmakedefine01 BUILD_EGL_ENABLE_3D
#cmakedefine01 BUILD_EGL_ENABLE_MULTISAMPLE
#cmakedefine01 BUILD_CRASH_HANDLER
#if BUILD_CRASH_HANDLER
static constexpr char kCrashHandlerDsn[] = "@CRASH_HANDLER_DSN@";
static constexpr char kCrashHandlerRelease[] = "@PROJECT_NAME@@@PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@";
#endif
#cmakedefine01 DEBUG_PLATFORM_MESSAGES
#cmakedefine01 ENABLE_LTO
#cmakedefine01 ENABLE_DLT
#cmakedefine01 ENABLE_PLUGINS
#cmakedefine01 BUILD_DOCS
#cmakedefine01 BUILD_UNIT_TESTS
#cmakedefine01 UNIT_TEST_SAVE_GOLDENS
// GIT
constexpr char kGitBranch[] = "@GIT_BRANCH@";
constexpr char kGitCommitHash[] = "@GIT_COMMIT_HASH@";
// Path prefix comes from CMAKE_INSTALL_PREFIX
constexpr char kPathPrefix[] = "@CMAKE_INSTALL_PREFIX@";
// Screen Size
constexpr int32_t kDefaultViewWidth = 1920;
constexpr int32_t kDefaultViewHeight = 720;
constexpr int kEglBufferSize = 24;
// Logging
constexpr int32_t kLogFlushInterval = 5;
constexpr int32_t kVmLogChunkMax = 10;
// Scale Factor
constexpr double kDefaultBufferScale = 1.0;
constexpr double kDefaultPixelRatio = 1.0;
// Cursor
constexpr int kCursorSize = 24;
constexpr char kCursorKindBasic[] = "left_ptr";
constexpr char kCursorKindClick[] = "hand";
constexpr char kCursorKindText[] = "left_ptr";
constexpr char kCursorKindForbidden[] = "pirate";
// Mouse/Touch
static constexpr int kMaxTouchFinger = 10;
static constexpr int kPointerEventModulus = 2;
static constexpr int kMaxPointerEvent =
kMaxTouchFinger * (15 * kPointerEventModulus);
// Locale
constexpr char kDefaultLocaleLanguageCode[] = "en";
constexpr char kDefaultLocaleCountryCode[] = "US";
constexpr char kDefaultLocaleScriptCode[] = "";
// Bundle folder paths
constexpr char kViewConfigToml[] = "config.toml";
constexpr char kBundleFlutterAssets[] = "data/flutter_assets";
constexpr char kBundleAot[] = "lib/libapp.so";
// Bundle folder override paths
constexpr char kBundleIcudtl[] = "data/icudtl.dat";
constexpr char kBundleEngine[] = "lib/libflutter_engine.so";
// System paths
constexpr char kSystemEngine[] = "libflutter_engine.so";
constexpr char kSystemIcudtl[] = "share/flutter/icudtl.dat";
// Install path constants
static constexpr char kApplicationName[] = "@EXE_OUTPUT_NAME@";
static constexpr char kXdgApplicationDir[] = "." "@EXE_OUTPUT_NAME@";
static constexpr char kXdgConfigDir[] = ".config";
// DLT Logging
static constexpr char kDltAppId[] = "HMIF";
static constexpr char kDltAppIdDescription[] = "HMI Flutter";
static constexpr char kDltContextId[] = "FEMB";
static constexpr char kDltContextIdDescription[] = "Flutter Embedder";
// Compositor Surface
constexpr unsigned int kCompSurfExpectedInterfaceVersion = 0x00010000;
static constexpr std::array<EGLint, 5> kEglContextAttribs = {{
// clang-format off
EGL_CONTEXT_MAJOR_VERSION, 3,
EGL_CONTEXT_MAJOR_VERSION, 2,
EGL_NONE
// clang-format on
}};
static constexpr std::array<EGLint, 27> kEglConfigAttribs = {{
// clang-format off
EGL_SURFACE_TYPE, EGL_WINDOW_BIT,
EGL_RENDERABLE_TYPE, EGL_OPENGL_ES3_BIT,
EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
EGL_RED_SIZE, 8,
EGL_GREEN_SIZE, 8,
EGL_BLUE_SIZE, 8,
#if BUILD_EGL_TRANSPARENCY
EGL_ALPHA_SIZE, 8,
#else
EGL_ALPHA_SIZE, 0,
#endif
#if BUILD_EGL_ENABLE_3D
EGL_STENCIL_SIZE, 8,
EGL_DEPTH_SIZE, 16,
#else
EGL_STENCIL_SIZE, 0,
EGL_DEPTH_SIZE, 0,
#endif
#if BUILD_EGL_ENABLE_MULTISAMPLE
EGL_SAMPLE_BUFFERS, 1,
EGL_SAMPLES, 4,
#else
EGL_SAMPLE_BUFFERS, 0,
EGL_SAMPLES, 0,
#endif
EGL_NONE // termination sentinel
// clang-format on
}};
static constexpr std::array<EGLint, 13> kEglConfigAttribsFallBack = {{
// clang-format off
EGL_SURFACE_TYPE, EGL_WINDOW_BIT,
EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
EGL_RED_SIZE, 1,
EGL_GREEN_SIZE, 1,
EGL_BLUE_SIZE, 1,
EGL_ALPHA_SIZE, 2,
EGL_NONE // termination sentinel
// clang-format on
}};
// All vkCreate* functions take an optional allocator. For now, we select the
// default allocator by passing in a null pointer, and we highlight the argument
// by using the VKALLOC constant.
constexpr struct VkAllocationCallbacks* VKALLOC = nullptr;
#cmakedefine01 ENV32BIT
#cmakedefine01 ENV64BIT
#endif //CONFIG_COMMON_H_