MapLibre Native C API
Public C ABI for the MapLibre Native wrapper.
Loading...
Searching...
No Matches
runtime.h
Go to the documentation of this file.
1
5
6#ifndef MAPLIBRE_NATIVE_C_RUNTIME_H
7#define MAPLIBRE_NATIVE_C_RUNTIME_H
8
9#ifndef __cplusplus
10#include <stdbool.h>
11#endif
12
13#include <stddef.h>
14#include <stdint.h>
15
16#include "base.h"
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22typedef enum mln_network_status : uint32_t {
23 MLN_NETWORK_STATUS_ONLINE = 1,
24 MLN_NETWORK_STATUS_OFFLINE = 2,
25} mln_network_status;
26
27typedef enum mln_ambient_cache_operation : uint32_t {
28 MLN_AMBIENT_CACHE_OPERATION_RESET_DATABASE = 1,
29 MLN_AMBIENT_CACHE_OPERATION_PACK_DATABASE = 2,
30 MLN_AMBIENT_CACHE_OPERATION_INVALIDATE = 3,
31 MLN_AMBIENT_CACHE_OPERATION_CLEAR = 4,
32} mln_ambient_cache_operation;
33
34typedef int64_t mln_offline_region_id;
35
36typedef enum mln_offline_region_definition_type : uint32_t {
37 MLN_OFFLINE_REGION_DEFINITION_TILE_PYRAMID = 1,
38 MLN_OFFLINE_REGION_DEFINITION_GEOMETRY = 2,
39} mln_offline_region_definition_type;
40
41typedef enum mln_offline_region_download_state : uint32_t {
42 MLN_OFFLINE_REGION_DOWNLOAD_INACTIVE = 0,
43 MLN_OFFLINE_REGION_DOWNLOAD_ACTIVE = 1,
44} mln_offline_region_download_state;
45
47typedef uint64_t mln_offline_operation_id;
48
50typedef enum mln_offline_operation_kind : uint32_t {
51 MLN_OFFLINE_OPERATION_AMBIENT_CACHE = 1,
52 MLN_OFFLINE_OPERATION_REGION_CREATE = 2,
53 MLN_OFFLINE_OPERATION_REGION_GET = 3,
54 MLN_OFFLINE_OPERATION_REGIONS_LIST = 4,
55 MLN_OFFLINE_OPERATION_REGIONS_MERGE_DATABASE = 5,
56 MLN_OFFLINE_OPERATION_REGION_UPDATE_METADATA = 6,
57 MLN_OFFLINE_OPERATION_REGION_GET_STATUS = 7,
58 MLN_OFFLINE_OPERATION_REGION_SET_OBSERVED = 8,
59 MLN_OFFLINE_OPERATION_REGION_SET_DOWNLOAD_STATE = 9,
60 MLN_OFFLINE_OPERATION_REGION_INVALIDATE = 10,
61 MLN_OFFLINE_OPERATION_REGION_DELETE = 11,
62 MLN_OFFLINE_OPERATION_SET_MAXIMUM_AMBIENT_CACHE_SIZE = 12,
64
66typedef enum mln_offline_operation_result_kind : uint32_t {
67 MLN_OFFLINE_OPERATION_RESULT_NONE = 0,
68 MLN_OFFLINE_OPERATION_RESULT_REGION = 1,
69 MLN_OFFLINE_OPERATION_RESULT_OPTIONAL_REGION = 2,
70 MLN_OFFLINE_OPERATION_RESULT_REGION_LIST = 3,
71 MLN_OFFLINE_OPERATION_RESULT_REGION_STATUS = 4,
73
76 uint32_t size;
79 uint64_t completed_resource_count;
80 uint64_t completed_resource_size;
81 uint64_t completed_tile_count;
82 uint64_t required_tile_count;
83 uint64_t completed_tile_size;
84 uint64_t required_resource_count;
85 bool required_resource_count_is_precise;
86 bool complete;
88
135typedef enum mln_runtime_event_type : uint32_t {
136 MLN_RUNTIME_EVENT_MAP_CAMERA_WILL_CHANGE = 1,
137 MLN_RUNTIME_EVENT_MAP_CAMERA_IS_CHANGING = 2,
138 MLN_RUNTIME_EVENT_MAP_CAMERA_DID_CHANGE = 3,
139 MLN_RUNTIME_EVENT_MAP_STYLE_LOADED = 4,
140 MLN_RUNTIME_EVENT_MAP_LOADING_STARTED = 5,
141 MLN_RUNTIME_EVENT_MAP_LOADING_FINISHED = 6,
142 MLN_RUNTIME_EVENT_MAP_LOADING_FAILED = 7,
143 MLN_RUNTIME_EVENT_MAP_IDLE = 8,
144 MLN_RUNTIME_EVENT_MAP_RENDER_UPDATE_AVAILABLE = 9,
145 MLN_RUNTIME_EVENT_MAP_RENDER_ERROR = 10,
146 MLN_RUNTIME_EVENT_MAP_STILL_IMAGE_FINISHED = 11,
147 MLN_RUNTIME_EVENT_MAP_STILL_IMAGE_FAILED = 12,
148 MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_STARTED = 13,
149 MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_FINISHED = 14,
150 MLN_RUNTIME_EVENT_MAP_RENDER_MAP_STARTED = 15,
151 MLN_RUNTIME_EVENT_MAP_RENDER_MAP_FINISHED = 16,
152 MLN_RUNTIME_EVENT_MAP_STYLE_IMAGE_MISSING = 17,
153 MLN_RUNTIME_EVENT_MAP_TILE_ACTION = 18,
154 MLN_RUNTIME_EVENT_OFFLINE_REGION_STATUS_CHANGED = 19,
155 MLN_RUNTIME_EVENT_OFFLINE_REGION_RESPONSE_ERROR = 20,
156 MLN_RUNTIME_EVENT_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED = 21,
157 MLN_RUNTIME_EVENT_OFFLINE_OPERATION_COMPLETED = 22,
158 MLN_RUNTIME_EVENT_MAP_CAMERA_TRANSITION_FINISHED = 23,
160
174typedef enum mln_runtime_event_mask : uint64_t {
177 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_WILL_CHANGE =
178 1ULL << MLN_RUNTIME_EVENT_MAP_CAMERA_WILL_CHANGE,
179 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_IS_CHANGING =
180 1ULL << MLN_RUNTIME_EVENT_MAP_CAMERA_IS_CHANGING,
181 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_DID_CHANGE =
182 1ULL << MLN_RUNTIME_EVENT_MAP_CAMERA_DID_CHANGE,
183 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_LOADED =
184 1ULL << MLN_RUNTIME_EVENT_MAP_STYLE_LOADED,
185 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_STARTED =
186 1ULL << MLN_RUNTIME_EVENT_MAP_LOADING_STARTED,
187 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FINISHED =
188 1ULL << MLN_RUNTIME_EVENT_MAP_LOADING_FINISHED,
189 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FAILED =
190 1ULL << MLN_RUNTIME_EVENT_MAP_LOADING_FAILED,
191 MLN_RUNTIME_EVENT_MASK_MAP_IDLE = 1ULL << MLN_RUNTIME_EVENT_MAP_IDLE,
192 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_UPDATE_AVAILABLE =
193 1ULL << MLN_RUNTIME_EVENT_MAP_RENDER_UPDATE_AVAILABLE,
194 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_ERROR =
195 1ULL << MLN_RUNTIME_EVENT_MAP_RENDER_ERROR,
196 MLN_RUNTIME_EVENT_MASK_MAP_STILL_IMAGE_FINISHED =
197 1ULL << MLN_RUNTIME_EVENT_MAP_STILL_IMAGE_FINISHED,
198 MLN_RUNTIME_EVENT_MASK_MAP_STILL_IMAGE_FAILED =
199 1ULL << MLN_RUNTIME_EVENT_MAP_STILL_IMAGE_FAILED,
200 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_STARTED =
201 1ULL << MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_STARTED,
202 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_FINISHED =
203 1ULL << MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_FINISHED,
204 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_STARTED =
205 1ULL << MLN_RUNTIME_EVENT_MAP_RENDER_MAP_STARTED,
206 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_FINISHED =
207 1ULL << MLN_RUNTIME_EVENT_MAP_RENDER_MAP_FINISHED,
208 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_IMAGE_MISSING =
209 1ULL << MLN_RUNTIME_EVENT_MAP_STYLE_IMAGE_MISSING,
210 MLN_RUNTIME_EVENT_MASK_MAP_TILE_ACTION = 1ULL
211 << MLN_RUNTIME_EVENT_MAP_TILE_ACTION,
212 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_TRANSITION_FINISHED =
213 1ULL << MLN_RUNTIME_EVENT_MAP_CAMERA_TRANSITION_FINISHED,
214 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_STATUS_CHANGED =
215 1ULL << MLN_RUNTIME_EVENT_OFFLINE_REGION_STATUS_CHANGED,
216 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_RESPONSE_ERROR =
217 1ULL << MLN_RUNTIME_EVENT_OFFLINE_REGION_RESPONSE_ERROR,
218 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED =
219 1ULL << MLN_RUNTIME_EVENT_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED,
220 MLN_RUNTIME_EVENT_MASK_OFFLINE_OPERATION_COMPLETED =
221 1ULL << MLN_RUNTIME_EVENT_OFFLINE_OPERATION_COMPLETED,
224 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_WILL_CHANGE |
225 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_IS_CHANGING |
226 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_DID_CHANGE |
227 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_LOADED |
228 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_STARTED |
229 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FINISHED |
230 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FAILED |
231 MLN_RUNTIME_EVENT_MASK_MAP_IDLE |
232 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_UPDATE_AVAILABLE |
233 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_ERROR |
234 MLN_RUNTIME_EVENT_MASK_MAP_STILL_IMAGE_FINISHED |
235 MLN_RUNTIME_EVENT_MASK_MAP_STILL_IMAGE_FAILED |
236 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_STARTED |
237 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_FINISHED |
238 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_STARTED |
239 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_FINISHED |
240 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_IMAGE_MISSING |
241 MLN_RUNTIME_EVENT_MASK_MAP_TILE_ACTION |
242 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_TRANSITION_FINISHED,
245 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_STATUS_CHANGED |
246 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_RESPONSE_ERROR |
247 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED |
248 MLN_RUNTIME_EVENT_MASK_OFFLINE_OPERATION_COMPLETED,
253
255typedef enum mln_runtime_event_source_type : uint32_t {
256 MLN_RUNTIME_EVENT_SOURCE_RUNTIME = 0,
257 MLN_RUNTIME_EVENT_SOURCE_MAP = 1,
259
266typedef enum mln_runtime_event_payload_type : uint32_t {
267 MLN_RUNTIME_EVENT_PAYLOAD_NONE = 0,
268 MLN_RUNTIME_EVENT_PAYLOAD_RENDER_FRAME = 1,
269 MLN_RUNTIME_EVENT_PAYLOAD_RENDER_MAP = 2,
270 MLN_RUNTIME_EVENT_PAYLOAD_TILE_ACTION = 4,
271 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_STATUS = 5,
272 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_RESPONSE_ERROR = 6,
273 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_TILE_COUNT_LIMIT = 7,
274 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_OPERATION_COMPLETED = 8,
275 MLN_RUNTIME_EVENT_PAYLOAD_CAMERA_TRANSITION_FINISHED = 9,
277
285
287typedef enum mln_render_mode : uint32_t {
288 MLN_RENDER_MODE_PARTIAL = 0,
289 MLN_RENDER_MODE_FULL = 1,
291
293typedef enum mln_tile_operation : uint32_t {
294 MLN_TILE_OPERATION_REQUESTED_FROM_CACHE = 0,
295 MLN_TILE_OPERATION_REQUESTED_FROM_NETWORK = 1,
296 MLN_TILE_OPERATION_LOAD_FROM_NETWORK = 2,
297 MLN_TILE_OPERATION_LOAD_FROM_CACHE = 3,
298 MLN_TILE_OPERATION_START_PARSE = 4,
299 MLN_TILE_OPERATION_END_PARSE = 5,
300 MLN_TILE_OPERATION_ERROR = 6,
301 MLN_TILE_OPERATION_CANCELLED = 7,
302 MLN_TILE_OPERATION_NULL = 8,
304
305typedef enum mln_resource_kind : uint32_t {
306 MLN_RESOURCE_KIND_UNKNOWN = 0,
307 MLN_RESOURCE_KIND_STYLE = 1,
308 MLN_RESOURCE_KIND_SOURCE = 2,
309 MLN_RESOURCE_KIND_TILE = 3,
310 MLN_RESOURCE_KIND_GLYPHS = 4,
311 MLN_RESOURCE_KIND_SPRITE_IMAGE = 5,
312 MLN_RESOURCE_KIND_SPRITE_JSON = 6,
313 MLN_RESOURCE_KIND_IMAGE = 7,
314} mln_resource_kind;
315
316typedef enum mln_resource_loading_method : uint32_t {
317 MLN_RESOURCE_LOADING_METHOD_ALL = 0,
318 MLN_RESOURCE_LOADING_METHOD_CACHE_ONLY = 1,
319 MLN_RESOURCE_LOADING_METHOD_NETWORK_ONLY = 2,
320} mln_resource_loading_method;
321
322typedef enum mln_resource_priority : uint32_t {
323 MLN_RESOURCE_PRIORITY_REGULAR = 0,
324 MLN_RESOURCE_PRIORITY_LOW = 1,
325} mln_resource_priority;
326
327typedef enum mln_resource_usage : uint32_t {
328 MLN_RESOURCE_USAGE_ONLINE = 0,
329 MLN_RESOURCE_USAGE_OFFLINE = 1,
330} mln_resource_usage;
331
332typedef enum mln_resource_storage_policy : uint32_t {
333 MLN_RESOURCE_STORAGE_POLICY_PERMANENT = 0,
334 MLN_RESOURCE_STORAGE_POLICY_VOLATILE = 1,
335} mln_resource_storage_policy;
336
337typedef enum mln_resource_response_status : uint32_t {
338 MLN_RESOURCE_RESPONSE_STATUS_OK = 0,
339 MLN_RESOURCE_RESPONSE_STATUS_ERROR = 1,
340 MLN_RESOURCE_RESPONSE_STATUS_NO_CONTENT = 2,
341 MLN_RESOURCE_RESPONSE_STATUS_NOT_MODIFIED = 3,
342} mln_resource_response_status;
343
344typedef enum mln_resource_error_reason : uint32_t {
345 MLN_RESOURCE_ERROR_REASON_NONE = 0,
346 MLN_RESOURCE_ERROR_REASON_NOT_FOUND = 1,
347 MLN_RESOURCE_ERROR_REASON_SERVER = 2,
348 MLN_RESOURCE_ERROR_REASON_CONNECTION = 3,
349 MLN_RESOURCE_ERROR_REASON_RATE_LIMIT = 4,
350 MLN_RESOURCE_ERROR_REASON_OTHER = 5,
351} mln_resource_error_reason;
352
353typedef enum mln_resource_provider_decision : uint32_t {
354 MLN_RESOURCE_PROVIDER_DECISION_PASS_THROUGH = 0,
355 MLN_RESOURCE_PROVIDER_DECISION_HANDLE = 1,
356} mln_resource_provider_decision;
357
368MLN_API mln_status mln_network_status_get(uint32_t* out_status) MLN_NOEXCEPT;
369
383MLN_API mln_status mln_network_status_set(uint32_t status) MLN_NOEXCEPT;
384
386typedef struct mln_runtime_options {
387 uint32_t size;
389 uint32_t flags;
391 const char* asset_path;
393 const char* cache_path;
404 uint64_t event_mask;
406
426
437
443
445typedef struct mln_tile_id {
446 uint32_t overscaled_z;
447 int32_t wrap;
448 uint32_t canonical_z;
449 uint32_t canonical_x;
450 uint32_t canonical_y;
452
463
477
488
495
498 mln_offline_region_id region_id;
499 uint64_t limit;
501
514
530 mln_runtime_event_offline_region_status offline_region_status;
531 mln_runtime_event_offline_region_response_error offline_region_response_error;
533 offline_region_tile_count_limit;
534 mln_runtime_event_offline_operation_completed offline_operation_completed;
535 mln_runtime_event_camera_transition_finished camera_transition_finished;
537
584
619
620typedef struct mln_resource_transform_response {
621 uint32_t size;
624 const char* url;
627 void* context;
628} mln_resource_transform_response;
629
644 mln_resource_transform_response* response, const char* url, size_t url_size
645) MLN_NOEXCEPT;
646
670 void* user_data, uint32_t kind, const char* url,
671 mln_resource_transform_response* out_response
672);
673
674typedef struct mln_resource_transform {
675 uint32_t size;
677 void* user_data;
678} mln_resource_transform;
679
680typedef struct mln_http_header_transform_response {
681 uint32_t size;
684 void* context;
685} mln_http_header_transform_response;
686
704 mln_http_header_transform_response* response, const char* name,
705 size_t name_size, const char* value, size_t value_size
706) MLN_NOEXCEPT;
707
725 void* user_data, uint32_t kind, const char* url,
726 mln_http_header_transform_response* out_response
727);
728
729typedef struct mln_http_header_transform {
730 uint32_t size;
732 void* user_data;
733} mln_http_header_transform;
734
735typedef struct mln_resource_request {
736 uint32_t size;
745 const char* requested_url;
758 const char* resolved_url;
759 uint32_t kind;
760 uint32_t loading_method;
761 uint32_t priority;
762 uint32_t usage;
763 uint32_t storage_policy;
764 bool has_range;
765 uint64_t range_start;
766 uint64_t range_end;
767 bool has_prior_modified;
768 int64_t prior_modified_unix_ms;
769 bool has_prior_expires;
770 int64_t prior_expires_unix_ms;
771 const char* prior_etag;
772 const uint8_t* prior_data;
773 size_t prior_data_size;
774} mln_resource_request;
775
776typedef struct mln_resource_response {
777 uint32_t size;
778 uint32_t status;
779 uint32_t error_reason;
781 const uint8_t* bytes;
782 size_t byte_count;
783 const char* error_message;
784 bool must_revalidate;
785 bool has_modified;
786 int64_t modified_unix_ms;
787 bool has_expires;
788 int64_t expires_unix_ms;
789 const char* etag;
790 bool has_retry_after;
791 int64_t retry_after_unix_ms;
792} mln_resource_response;
793
824 void* user_data, const mln_resource_request* request,
825 mln_resource_request_handle handle
826);
827
828typedef struct mln_resource_provider {
829 uint32_t size;
831 void* user_data;
832} mln_resource_provider;
833
838
855 const mln_runtime_options* options, mln_runtime* out_runtime
856) MLN_NOEXCEPT;
857
884 mln_runtime runtime, const mln_resource_provider* provider
885) MLN_NOEXCEPT;
886
904MLN_API mln_status
906
926 mln_resource_request_handle handle, const mln_resource_response* response
927) MLN_NOEXCEPT;
928
941 mln_resource_request_handle handle, bool* out_cancelled
942) MLN_NOEXCEPT;
943
955 mln_resource_request_handle handle
956) MLN_NOEXCEPT;
957
970 mln_resource_request_handle handle
971) MLN_NOEXCEPT;
972
993 mln_runtime runtime, const mln_resource_transform* transform
994) MLN_NOEXCEPT;
995
1009MLN_API mln_status
1011
1033 mln_runtime runtime, const mln_http_header_transform* transform
1034) MLN_NOEXCEPT;
1035
1049MLN_API mln_status
1051
1069 mln_runtime runtime, uint32_t operation,
1070 mln_offline_operation_id* out_operation_id
1071) MLN_NOEXCEPT;
1072
1094 mln_runtime runtime, uint64_t size, mln_offline_operation_id* out_operation_id
1095) MLN_NOEXCEPT;
1096
1113 mln_runtime runtime, mln_offline_operation_id operation_id
1114) MLN_NOEXCEPT;
1115
1139MLN_API mln_status mln_runtime_destroy(mln_runtime runtime) MLN_NOEXCEPT;
1140
1206 mln_runtime runtime, int64_t timeout_ms, int64_t budget_ms
1207) MLN_NOEXCEPT;
1208
1226 mln_runtime runtime, mln_wake_source* out_source
1227) MLN_NOEXCEPT;
1228
1244MLN_API mln_status mln_wake_source_signal(mln_wake_source source) MLN_NOEXCEPT;
1245
1252MLN_API void mln_wake_source_destroy(mln_wake_source source) MLN_NOEXCEPT;
1253
1257
1311 mln_runtime runtime, size_t max_events, mln_runtime_event_batch* out_batch
1312) MLN_NOEXCEPT;
1313
1345MLN_API mln_status
1346mln_runtime_set_event_mask(mln_runtime runtime, uint64_t mask) MLN_NOEXCEPT;
1347
1365 mln_runtime runtime, uint64_t* out_mask
1366) MLN_NOEXCEPT;
1367
1368#ifdef __cplusplus
1369}
1370#endif
1371
1372#endif // MAPLIBRE_NATIVE_C_RUNTIME_H
uint64_t mln_runtime
Definition base.h:86
mln_status
Definition base.h:39
mln_status mln_runtime_set_resource_transform(mln_runtime runtime, const mln_resource_transform *transform)
mln_status mln_runtime_drain_events(mln_runtime runtime, size_t max_events, mln_runtime_event_batch *out_batch)
mln_tile_operation
Definition runtime.h:293
mln_status mln_runtime_get_event_mask(mln_runtime runtime, uint64_t *out_mask)
mln_runtime_event_mask
Definition runtime.h:174
@ MLN_RUNTIME_EVENT_MASK_ALL_MAP_EVENTS
Definition runtime.h:223
@ MLN_RUNTIME_EVENT_MASK_NONE
Definition runtime.h:176
@ MLN_RUNTIME_EVENT_MASK_ALL
Definition runtime.h:250
@ MLN_RUNTIME_EVENT_MASK_ALL_RUNTIME_EVENTS
Definition runtime.h:244
mln_status mln_network_status_get(uint32_t *out_status)
mln_runtime_event_payload_type
Definition runtime.h:266
mln_status mln_runtime_clear_resource_transform(mln_runtime runtime)
mln_status mln_runtime_clear_http_header_transform(mln_runtime runtime)
mln_status mln_runtime_pump(mln_runtime runtime, int64_t timeout_ms, int64_t budget_ms)
mln_status mln_runtime_set_resource_provider(mln_runtime runtime, const mln_resource_provider *provider)
mln_status mln_runtime_run_ambient_cache_operation_start(mln_runtime runtime, uint32_t operation, mln_offline_operation_id *out_operation_id)
mln_runtime_event_type
Definition runtime.h:135
mln_status mln_runtime_set_maximum_ambient_cache_size_start(mln_runtime runtime, uint64_t size, mln_offline_operation_id *out_operation_id)
void mln_resource_request_release(mln_resource_request_handle handle)
mln_status mln_runtime_clear_resource_provider(mln_runtime runtime)
mln_status mln_wake_source_signal(mln_wake_source source)
mln_status mln_resource_request_cancelled(mln_resource_request_handle handle, bool *out_cancelled)
mln_status mln_resource_request_wait_until_retired(mln_resource_request_handle handle)
mln_status mln_http_header_transform_response_set(mln_http_header_transform_response *response, const char *name, size_t name_size, const char *value, size_t value_size)
mln_status mln_runtime_set_http_header_transform(mln_runtime runtime, const mln_http_header_transform *transform)
uint32_t(* mln_resource_provider_callback)(void *user_data, const mln_resource_request *request, mln_resource_request_handle handle)
Definition runtime.h:823
mln_status(* mln_http_header_transform_callback)(void *user_data, uint32_t kind, const char *url, mln_http_header_transform_response *out_response)
Definition runtime.h:724
mln_runtime_event_batch mln_runtime_event_batch_default(void)
mln_offline_operation_result_kind
Definition runtime.h:66
mln_runtime_event_source_type
Definition runtime.h:255
mln_status mln_runtime_create(const mln_runtime_options *options, mln_runtime *out_runtime)
mln_status mln_runtime_offline_operation_discard(mln_runtime runtime, mln_offline_operation_id operation_id)
mln_camera_change_mode
Definition runtime.h:279
@ MLN_CAMERA_CHANGE_MODE_IMMEDIATE
Definition runtime.h:281
@ MLN_CAMERA_CHANGE_MODE_ANIMATED
Definition runtime.h:283
void mln_wake_source_destroy(mln_wake_source source)
mln_status mln_runtime_wake_source_acquire(mln_runtime runtime, mln_wake_source *out_source)
mln_status mln_resource_request_complete(mln_resource_request_handle handle, const mln_resource_response *response)
mln_status mln_resource_transform_response_set_url(mln_resource_transform_response *response, const char *url, size_t url_size)
mln_status mln_runtime_destroy(mln_runtime runtime)
mln_runtime_options mln_runtime_options_default(void)
mln_status(* mln_resource_transform_callback)(void *user_data, uint32_t kind, const char *url, mln_resource_transform_response *out_response)
Definition runtime.h:669
uint64_t mln_offline_operation_id
Definition runtime.h:47
mln_offline_operation_kind
Definition runtime.h:50
mln_status mln_network_status_set(uint32_t status)
mln_status mln_runtime_set_event_mask(mln_runtime runtime, uint64_t mask)
mln_render_mode
Definition runtime.h:287
Definition runtime.h:75
uint32_t download_state
Definition runtime.h:78
Definition runtime.h:414
int64_t draw_call_count
Definition runtime.h:422
double encoding_time
Definition runtime.h:416
int64_t total_draw_call_count
Definition runtime.h:424
double rendering_time
Definition runtime.h:418
int64_t frame_count
Definition runtime.h:420
Definition runtime.h:592
size_t event_count
Definition runtime.h:605
size_t remaining_count
Definition runtime.h:617
const mln_runtime_event * events
Definition runtime.h:603
uint32_t event_size
Definition runtime.h:598
size_t messages_size
Definition runtime.h:612
const char * messages
Definition runtime.h:610
uint64_t transition_id
Definition runtime.h:475
uint32_t result_kind
Definition runtime.h:508
uint32_t operation_kind
Definition runtime.h:506
int32_t result_status
Definition runtime.h:510
uint32_t reason
Definition runtime.h:493
mln_offline_region_status status
Definition runtime.h:486
Definition runtime.h:428
bool needs_repaint
Definition runtime.h:432
uint32_t mode
Definition runtime.h:430
bool placement_changed
Definition runtime.h:434
Definition runtime.h:439
uint32_t mode
Definition runtime.h:441
Definition runtime.h:458
uint32_t operation
Definition runtime.h:460
Definition runtime.h:549
uint32_t type
Definition runtime.h:551
uint32_t message_offset
Definition runtime.h:575
uint32_t payload_type
Definition runtime.h:570
uint64_t source
Definition runtime.h:562
int32_t code
Definition runtime.h:568
uint32_t message_size
Definition runtime.h:580
mln_runtime_event_payload payload
Definition runtime.h:582
uint32_t source_type
Definition runtime.h:553
Definition runtime.h:386
const char * cache_path
Definition runtime.h:393
const char * asset_path
Definition runtime.h:391
uint32_t flags
Definition runtime.h:389
uint64_t event_mask
Definition runtime.h:404
Definition runtime.h:445
Definition runtime.h:526