6#ifndef MAPLIBRE_NATIVE_C_RUNTIME_H
7#define MAPLIBRE_NATIVE_C_RUNTIME_H
23typedef enum mln_network_status : uint32_t {
24 MLN_NETWORK_STATUS_ONLINE = 1,
25 MLN_NETWORK_STATUS_OFFLINE = 2,
28typedef enum mln_ambient_cache_operation : uint32_t {
29 MLN_AMBIENT_CACHE_OPERATION_RESET_DATABASE = 1,
30 MLN_AMBIENT_CACHE_OPERATION_PACK_DATABASE = 2,
31 MLN_AMBIENT_CACHE_OPERATION_INVALIDATE = 3,
32 MLN_AMBIENT_CACHE_OPERATION_CLEAR = 4,
33} mln_ambient_cache_operation;
35typedef int64_t mln_offline_region_id;
37typedef enum mln_offline_region_definition_type : uint32_t {
38 MLN_OFFLINE_REGION_DEFINITION_TILE_PYRAMID = 1,
39 MLN_OFFLINE_REGION_DEFINITION_GEOMETRY = 2,
40} mln_offline_region_definition_type;
42typedef enum mln_offline_region_download_state : uint32_t {
43 MLN_OFFLINE_REGION_DOWNLOAD_INACTIVE = 0,
44 MLN_OFFLINE_REGION_DOWNLOAD_ACTIVE = 1,
45} mln_offline_region_download_state;
51 uint64_t completed_resource_count;
52 uint64_t completed_resource_size;
53 uint64_t completed_tile_count;
54 uint64_t required_tile_count;
55 uint64_t completed_tile_size;
56 uint64_t required_resource_count;
57 bool required_resource_count_is_precise;
111 MLN_RUNTIME_EVENT_MAP_CAMERA_WILL_CHANGE = 1,
112 MLN_RUNTIME_EVENT_MAP_CAMERA_IS_CHANGING = 2,
113 MLN_RUNTIME_EVENT_MAP_CAMERA_DID_CHANGE = 3,
114 MLN_RUNTIME_EVENT_MAP_STYLE_LOADED = 4,
115 MLN_RUNTIME_EVENT_MAP_LOADING_STARTED = 5,
116 MLN_RUNTIME_EVENT_MAP_LOADING_FINISHED = 6,
117 MLN_RUNTIME_EVENT_MAP_LOADING_FAILED = 7,
118 MLN_RUNTIME_EVENT_MAP_IDLE = 8,
119 MLN_RUNTIME_EVENT_MAP_RENDER_ERROR = 10,
120 MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_STARTED = 13,
121 MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_FINISHED = 14,
122 MLN_RUNTIME_EVENT_MAP_RENDER_MAP_STARTED = 15,
123 MLN_RUNTIME_EVENT_MAP_RENDER_MAP_FINISHED = 16,
124 MLN_RUNTIME_EVENT_MAP_STYLE_IMAGE_MISSING = 17,
125 MLN_RUNTIME_EVENT_MAP_TILE_ACTION = 18,
126 MLN_RUNTIME_EVENT_OFFLINE_REGION_STATUS_CHANGED = 19,
127 MLN_RUNTIME_EVENT_OFFLINE_REGION_RESPONSE_ERROR = 20,
128 MLN_RUNTIME_EVENT_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED = 21,
129 MLN_RUNTIME_EVENT_MAP_SOURCE_CHANGED = 23,
148 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_WILL_CHANGE = 1ULL
149 << MLN_RUNTIME_EVENT_MAP_CAMERA_WILL_CHANGE,
150 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_IS_CHANGING = 1ULL
151 << MLN_RUNTIME_EVENT_MAP_CAMERA_IS_CHANGING,
152 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_DID_CHANGE = 1ULL
153 << MLN_RUNTIME_EVENT_MAP_CAMERA_DID_CHANGE,
154 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_LOADED = 1ULL
155 << MLN_RUNTIME_EVENT_MAP_STYLE_LOADED,
156 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_STARTED = 1ULL
157 << MLN_RUNTIME_EVENT_MAP_LOADING_STARTED,
158 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FINISHED = 1ULL
159 << MLN_RUNTIME_EVENT_MAP_LOADING_FINISHED,
160 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FAILED = 1ULL
161 << MLN_RUNTIME_EVENT_MAP_LOADING_FAILED,
162 MLN_RUNTIME_EVENT_MASK_MAP_IDLE = 1ULL << MLN_RUNTIME_EVENT_MAP_IDLE,
163 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_ERROR = 1ULL
164 << MLN_RUNTIME_EVENT_MAP_RENDER_ERROR,
165 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_STARTED = 1ULL
166 << MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_STARTED,
167 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_FINISHED = 1ULL
168 << MLN_RUNTIME_EVENT_MAP_RENDER_FRAME_FINISHED,
169 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_STARTED = 1ULL
170 << MLN_RUNTIME_EVENT_MAP_RENDER_MAP_STARTED,
171 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_FINISHED = 1ULL
172 << MLN_RUNTIME_EVENT_MAP_RENDER_MAP_FINISHED,
173 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_IMAGE_MISSING = 1ULL
174 << MLN_RUNTIME_EVENT_MAP_STYLE_IMAGE_MISSING,
175 MLN_RUNTIME_EVENT_MASK_MAP_TILE_ACTION = 1ULL
176 << MLN_RUNTIME_EVENT_MAP_TILE_ACTION,
177 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_STATUS_CHANGED = 1ULL
178 << MLN_RUNTIME_EVENT_OFFLINE_REGION_STATUS_CHANGED,
179 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_RESPONSE_ERROR = 1ULL
180 << MLN_RUNTIME_EVENT_OFFLINE_REGION_RESPONSE_ERROR,
181 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED = 1ULL
182 << MLN_RUNTIME_EVENT_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED,
183 MLN_RUNTIME_EVENT_MASK_MAP_SOURCE_CHANGED = 1ULL
184 << MLN_RUNTIME_EVENT_MAP_SOURCE_CHANGED,
187 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_WILL_CHANGE |
188 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_IS_CHANGING |
189 MLN_RUNTIME_EVENT_MASK_MAP_CAMERA_DID_CHANGE |
190 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_LOADED |
191 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_STARTED |
192 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FINISHED |
193 MLN_RUNTIME_EVENT_MASK_MAP_LOADING_FAILED |
194 MLN_RUNTIME_EVENT_MASK_MAP_IDLE | MLN_RUNTIME_EVENT_MASK_MAP_RENDER_ERROR |
195 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_STARTED |
196 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_FRAME_FINISHED |
197 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_STARTED |
198 MLN_RUNTIME_EVENT_MASK_MAP_RENDER_MAP_FINISHED |
199 MLN_RUNTIME_EVENT_MASK_MAP_STYLE_IMAGE_MISSING |
200 MLN_RUNTIME_EVENT_MASK_MAP_TILE_ACTION |
201 MLN_RUNTIME_EVENT_MASK_MAP_SOURCE_CHANGED,
204 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_STATUS_CHANGED |
205 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_RESPONSE_ERROR |
206 MLN_RUNTIME_EVENT_MASK_OFFLINE_REGION_TILE_COUNT_LIMIT_EXCEEDED,
218 MLN_RUNTIME_EVENT_SOURCE_RUNTIME = 0,
219 MLN_RUNTIME_EVENT_SOURCE_MAP = 1,
228 MLN_RUNTIME_EVENT_PAYLOAD_NONE = 0,
229 MLN_RUNTIME_EVENT_PAYLOAD_RENDER_FRAME = 1,
230 MLN_RUNTIME_EVENT_PAYLOAD_RENDER_MAP = 2,
231 MLN_RUNTIME_EVENT_PAYLOAD_TILE_ACTION = 4,
232 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_STATUS = 5,
233 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_RESPONSE_ERROR = 6,
234 MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_TILE_COUNT_LIMIT = 7,
247 MLN_RENDER_MODE_PARTIAL = 0,
248 MLN_RENDER_MODE_FULL = 1,
253 MLN_TILE_OPERATION_REQUESTED_FROM_CACHE = 0,
254 MLN_TILE_OPERATION_REQUESTED_FROM_NETWORK = 1,
255 MLN_TILE_OPERATION_LOAD_FROM_NETWORK = 2,
256 MLN_TILE_OPERATION_LOAD_FROM_CACHE = 3,
257 MLN_TILE_OPERATION_START_PARSE = 4,
258 MLN_TILE_OPERATION_END_PARSE = 5,
259 MLN_TILE_OPERATION_ERROR = 6,
260 MLN_TILE_OPERATION_CANCELLED = 7,
261 MLN_TILE_OPERATION_NULL = 8,
264typedef enum mln_resource_kind : uint32_t {
265 MLN_RESOURCE_KIND_UNKNOWN = 0,
266 MLN_RESOURCE_KIND_STYLE = 1,
267 MLN_RESOURCE_KIND_SOURCE = 2,
268 MLN_RESOURCE_KIND_TILE = 3,
269 MLN_RESOURCE_KIND_GLYPHS = 4,
270 MLN_RESOURCE_KIND_SPRITE_IMAGE = 5,
271 MLN_RESOURCE_KIND_SPRITE_JSON = 6,
272 MLN_RESOURCE_KIND_IMAGE = 7,
275typedef enum mln_resource_loading_method : uint32_t {
276 MLN_RESOURCE_LOADING_METHOD_ALL = 0,
277 MLN_RESOURCE_LOADING_METHOD_CACHE_ONLY = 1,
278 MLN_RESOURCE_LOADING_METHOD_NETWORK_ONLY = 2,
279} mln_resource_loading_method;
281typedef enum mln_resource_priority : uint32_t {
282 MLN_RESOURCE_PRIORITY_REGULAR = 0,
283 MLN_RESOURCE_PRIORITY_LOW = 1,
284} mln_resource_priority;
286typedef enum mln_resource_usage : uint32_t {
287 MLN_RESOURCE_USAGE_ONLINE = 0,
288 MLN_RESOURCE_USAGE_OFFLINE = 1,
291typedef enum mln_resource_storage_policy : uint32_t {
292 MLN_RESOURCE_STORAGE_POLICY_PERMANENT = 0,
293 MLN_RESOURCE_STORAGE_POLICY_VOLATILE = 1,
294} mln_resource_storage_policy;
311 MLN_RESOURCE_RESPONSE_STATUS_OK = 0,
312 MLN_RESOURCE_RESPONSE_STATUS_ERROR = 1,
313 MLN_RESOURCE_RESPONSE_STATUS_NO_CONTENT = 2,
314 MLN_RESOURCE_RESPONSE_STATUS_NOT_MODIFIED = 3,
317typedef enum mln_resource_error_reason : uint32_t {
318 MLN_RESOURCE_ERROR_REASON_NONE = 0,
319 MLN_RESOURCE_ERROR_REASON_NOT_FOUND = 1,
320 MLN_RESOURCE_ERROR_REASON_SERVER = 2,
321 MLN_RESOURCE_ERROR_REASON_CONNECTION = 3,
322 MLN_RESOURCE_ERROR_REASON_RATE_LIMIT = 4,
323 MLN_RESOURCE_ERROR_REASON_OTHER = 5,
324} mln_resource_error_reason;
326typedef enum mln_resource_provider_decision : uint32_t {
327 MLN_RESOURCE_PROVIDER_DECISION_PASS_THROUGH = 0,
328 MLN_RESOURCE_PROVIDER_DECISION_HANDLE = 1,
329} mln_resource_provider_decision;
342 uint32_t* out_status
MLN_BINDING(
"direction=out;enum=mln_network_status"),
359 uint32_t status
MLN_BINDING(
"enum=mln_network_status"),
417 uint32_t overscaled_z;
419 uint32_t canonical_z;
420 uint32_t canonical_x;
421 uint32_t canonical_y;
437 mln_offline_region_id region_id;
449 mln_offline_region_id region_id;
456 mln_offline_region_id region_id;
473 MLN_BINDING(
"variant=MLN_RUNTIME_EVENT_PAYLOAD_RENDER_FRAME");
475 MLN_BINDING(
"variant=MLN_RUNTIME_EVENT_PAYLOAD_RENDER_MAP");
477 MLN_BINDING(
"variant=MLN_RUNTIME_EVENT_PAYLOAD_TILE_ACTION");
479 MLN_BINDING(
"variant=MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_STATUS");
482 "variant=MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_RESPONSE_ERROR"
486 "variant=MLN_RUNTIME_EVENT_PAYLOAD_OFFLINE_REGION_TILE_COUNT_LIMIT"
540 "tag=payload_type;empty_variant=MLN_RUNTIME_EVENT_PAYLOAD_NONE"
560 MLN_BINDING(
"length=event_count;stride=event_size");
573MLN_BINDING(
"delivery=MLN_DELIVERY_TYPE_RUNTIME_EVENTS")
594 "kind=callback_registration;release=release_user_data"
604 MLN_RESOURCE_KIND_MASK_UNKNOWN = 1U << MLN_RESOURCE_KIND_UNKNOWN,
605 MLN_RESOURCE_KIND_MASK_STYLE = 1U << MLN_RESOURCE_KIND_STYLE,
606 MLN_RESOURCE_KIND_MASK_SOURCE = 1U << MLN_RESOURCE_KIND_SOURCE,
607 MLN_RESOURCE_KIND_MASK_TILE = 1U << MLN_RESOURCE_KIND_TILE,
608 MLN_RESOURCE_KIND_MASK_GLYPHS = 1U << MLN_RESOURCE_KIND_GLYPHS,
609 MLN_RESOURCE_KIND_MASK_SPRITE_IMAGE = 1U << MLN_RESOURCE_KIND_SPRITE_IMAGE,
610 MLN_RESOURCE_KIND_MASK_SPRITE_JSON = 1U << MLN_RESOURCE_KIND_SPRITE_JSON,
611 MLN_RESOURCE_KIND_MASK_IMAGE = 1U << MLN_RESOURCE_KIND_IMAGE,
612 MLN_RESOURCE_KIND_MASK_ALL = MLN_RESOURCE_KIND_MASK_UNKNOWN |
613 MLN_RESOURCE_KIND_MASK_STYLE | MLN_RESOURCE_KIND_MASK_SOURCE |
614 MLN_RESOURCE_KIND_MASK_TILE | MLN_RESOURCE_KIND_MASK_GLYPHS |
615 MLN_RESOURCE_KIND_MASK_SPRITE_IMAGE | MLN_RESOURCE_KIND_MASK_SPRITE_JSON |
616 MLN_RESOURCE_KIND_MASK_IMAGE,
648 MLN_URL_MATCH_EXACT = 0U,
718MLN_BINDING(
"delivery=MLN_DELIVERY_TYPE_RESOURCE_TRANSFORM")
720 void* user_data, uint32_t kind
MLN_BINDING(
"enum=mln_resource_kind"),
756 "kind=callback_registration;release=release_user_data"
759typedef struct mln_http_header_transform_response {
762 void* context
MLN_BINDING(
"kind=context;lifetime=call");
763} mln_http_header_transform_response
MLN_BINDING(
"kind=callback_response");
807 void* user_data, uint32_t kind
MLN_BINDING(
"enum=mln_resource_kind"),
809 mln_http_header_transform_response* out_response
MLN_BINDING(
"direction=out")
840 "kind=callback_registration;release=release_user_data"
861typedef struct mln_resource_request_info {
863 uint32_t fields
MLN_BINDING(
"enum=mln_resource_request_field");
872 const char* requested_url
MLN_BINDING(
"nullable=true");
885 const char* resolved_url
MLN_BINDING(
"nullable=true");
886 uint32_t kind
MLN_BINDING(
"enum=mln_resource_kind");
887 uint32_t loading_method
MLN_BINDING(
"enum=mln_resource_loading_method");
888 uint32_t priority
MLN_BINDING(
"enum=mln_resource_priority");
889 uint32_t usage
MLN_BINDING(
"enum=mln_resource_usage");
890 uint32_t storage_policy
MLN_BINDING(
"enum=mln_resource_storage_policy");
892 MLN_BINDING(
"mask=fields;bit=MLN_RESOURCE_REQUEST_RANGE");
893 int64_t prior_modified_unix_ms
894 MLN_BINDING(
"mask=fields;bit=MLN_RESOURCE_REQUEST_PRIOR_MODIFIED");
895 int64_t prior_expires_unix_ms
896 MLN_BINDING(
"mask=fields;bit=MLN_RESOURCE_REQUEST_PRIOR_EXPIRES");
897 const char* prior_etag
MLN_BINDING(
"nullable=true");
898 const uint8_t* prior_data
899 MLN_BINDING(
"length=prior_data_size;encoding=bytes");
900 size_t prior_data_size;
901} mln_resource_request_info;
923 uint32_t fields
MLN_BINDING(
"enum=mln_resource_response_field");
924 uint32_t status
MLN_BINDING(
"enum=mln_resource_response_status");
925 uint32_t error_reason
MLN_BINDING(
"enum=mln_resource_error_reason");
930 bool must_revalidate;
931 int64_t modified_unix_ms
932 MLN_BINDING(
"mask=fields;bit=MLN_RESOURCE_RESPONSE_MODIFIED");
933 int64_t expires_unix_ms
934 MLN_BINDING(
"mask=fields;bit=MLN_RESOURCE_RESPONSE_EXPIRES");
936 int64_t retry_after_unix_ms
937 MLN_BINDING(
"mask=fields;bit=MLN_RESOURCE_RESPONSE_RETRY_AFTER");
974 "enum=mln_resource_provider_decision;"
975 "failure=4294967295;"
976 "delivery=MLN_DELIVERY_TYPE_RESOURCE_REQUEST;"
977 "decision_handle=handle;"
978 "decision_accept=MLN_RESOURCE_PROVIDER_DECISION_HANDLE"
981 void* user_data, const mln_resource_request_info* request,
1004 "delivery=MLN_DELIVERY_TYPE_RESOURCE_REQUEST_CANCEL;"
1005 "borrowed_owner=handle"
1042 "kind=callback_registration;release=release_user_data"
1091 "kind=callback_registration;release=release_user_data"
1498 uint32_t operation
MLN_BINDING(
"enum=mln_ambient_cache_operation"),
1716 uint64_t* out_mask
MLN_BINDING(
"direction=out;enum=mln_runtime_event_mask"),
uint64_t mln_resource_transform_request
Definition base.h:156
uint64_t mln_delivery_queue
Definition base.h:178
void(*) mln_user_data_release(void *user_data)
Definition base.h:205
uint64_t mln_runtime
Definition base.h:126
uint64_t mln_resource_request
Definition base.h:151
mln_status
Definition base.h:61
#define MLN_BINDING(contract)
Definition binding.h:17
mln_status mln_network_get_status(uint32_t *out_status, mln_diagnostic *out_diagnostic)
mln_resource_request_field
Definition runtime.h:852
@ MLN_RESOURCE_REQUEST_RANGE
Definition runtime.h:854
@ MLN_RESOURCE_REQUEST_PRIOR_EXPIRES
Definition runtime.h:858
@ MLN_RESOURCE_REQUEST_PRIOR_MODIFIED
Definition runtime.h:856
mln_status mln_runtime_dispose(mln_runtime runtime, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_create(const mln_runtime_options *options, mln_runtime *out_runtime, mln_diagnostic *out_diagnostic)
mln_status mln_resource_request_pass_through(mln_resource_request handle, mln_diagnostic *out_diagnostic)
mln_resource_response_field
Definition runtime.h:906
@ MLN_RESOURCE_RESPONSE_RETRY_AFTER
Definition runtime.h:912
@ MLN_RESOURCE_RESPONSE_MODIFIED
Definition runtime.h:908
@ MLN_RESOURCE_RESPONSE_EXPIRES
Definition runtime.h:910
mln_tile_operation
Definition runtime.h:252
mln_runtime_event_mask
Definition runtime.h:145
@ MLN_RUNTIME_EVENT_MASK_ALL_MAP_EVENTS
Definition runtime.h:186
@ MLN_RUNTIME_EVENT_MASK_NONE
Definition runtime.h:147
@ MLN_RUNTIME_EVENT_MASK_ALL
Definition runtime.h:208
@ MLN_RUNTIME_EVENT_MASK_ALL_RUNTIME_EVENTS
Definition runtime.h:203
mln_runtime_event_payload_type
Definition runtime.h:227
mln_status mln_runtime_clear_http_header_transform(mln_runtime runtime, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_url_match_flags
Definition runtime.h:647
@ MLN_URL_MATCH_GLOB
Definition runtime.h:650
mln_status mln_runtime_set_maximum_ambient_cache_size(mln_runtime runtime, uint64_t size, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_set_http_header_transform(mln_runtime runtime, const mln_http_header_transform *transform, const mln_completion *completion, mln_diagnostic *out_diagnostic)
void(*) mln_resource_transform_callback(void *user_data, uint32_t kind, const char *url, mln_resource_transform_request request)
Definition runtime.h:719
mln_resource_route mln_resource_route_default(void)
mln_runtime_event_type
Definition runtime.h:110
mln_status mln_resource_transform_request_complete(mln_resource_transform_request request, mln_buffer_view url, mln_diagnostic *out_diagnostic)
struct mln_resource_range mln_resource_range
mln_status mln_network_set_status(uint32_t status, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_set_event_handler(mln_runtime runtime, const mln_runtime_event_handler *handler, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_release(mln_runtime runtime, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_resource_kind_mask
Definition runtime.h:603
mln_resource_response_status
Definition runtime.h:310
mln_status mln_resource_request_is_cancelled(mln_resource_request handle, bool *out_cancelled, mln_diagnostic *out_diagnostic)
void mln_resource_transform_request_release(mln_resource_transform_request request)
mln_status mln_runtime_get_event_mask(mln_runtime runtime, uint64_t *out_mask, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_set_resource_transform(mln_runtime runtime, const mln_resource_transform *transform, const mln_completion *completion, mln_diagnostic *out_diagnostic)
uint32_t(*) mln_resource_provider_callback(void *user_data, const mln_resource_request_info *request, mln_resource_request handle)
Definition runtime.h:980
mln_http_header_rule mln_http_header_rule_default(void)
mln_runtime_event_source_type
Definition runtime.h:217
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:806
mln_camera_change_mode
Definition runtime.h:238
@ MLN_CAMERA_CHANGE_MODE_IMMEDIATE
Definition runtime.h:240
@ MLN_CAMERA_CHANGE_MODE_ANIMATED
Definition runtime.h:242
mln_status mln_resource_request_set_cancel_callback(mln_resource_request handle, const mln_resource_request_cancel_handler *handler, bool *out_cancelled, mln_diagnostic *out_diagnostic)
void mln_resource_request_release(mln_resource_request handle)
mln_runtime_options mln_runtime_options_default(void)
void(*) mln_runtime_event_callback(void *user_data, const mln_event_batch_view *events)
Definition runtime.h:574
mln_status mln_runtime_clear_event_handler(mln_runtime runtime, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_set_resource_provider(mln_runtime runtime, const mln_resource_provider *provider, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_set_event_mask(mln_runtime runtime, uint64_t mask, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_clear_resource_transform(mln_runtime runtime, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_resource_request_complete(mln_resource_request handle, const mln_resource_response *response, mln_diagnostic *out_diagnostic)
mln_status mln_runtime_run_ambient_cache_operation(mln_runtime runtime, uint32_t operation, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_render_mode
Definition runtime.h:246
mln_status mln_runtime_clear_resource_provider(mln_runtime runtime, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_http_header_transform_response_set_header(mln_http_header_transform_response *response, mln_buffer_view name, mln_buffer_view value, mln_diagnostic *out_diagnostic)
void(*) mln_resource_request_cancel_callback(void *user_data, mln_resource_request handle)
Definition runtime.h:1007
Definition completion.h:121
uint32_t event_size
Definition runtime.h:557
const mln_runtime_event * events
Definition runtime.h:560
size_t event_count
Definition runtime.h:562
uint32_t download_state
Definition runtime.h:50
int64_t draw_call_count
Definition runtime.h:393
double encoding_time
Definition runtime.h:387
int64_t total_draw_call_count
Definition runtime.h:395
double rendering_time
Definition runtime.h:389
int64_t frame_count
Definition runtime.h:391
Definition runtime.h:1054
const mln_resource_route * routes
Definition runtime.h:1088
mln_resource_provider_callback callback
Definition runtime.h:1061
mln_delivery_queue queue
Definition runtime.h:1086
mln_user_data_release release_user_data
Definition runtime.h:1074
uint64_t end
Definition runtime.h:848
uint64_t start
Definition runtime.h:846
Definition runtime.h:1017
void * user_data
Definition runtime.h:1022
mln_delivery_queue queue
Definition runtime.h:1040
mln_resource_request_cancel_callback callback
Definition runtime.h:1020
mln_user_data_release release_user_data
Definition runtime.h:1031
const uint8_t * bytes
Definition runtime.h:927
uint32_t kinds
Definition runtime.h:660
mln_buffer_view url
Definition runtime.h:664
uint32_t flags
Definition runtime.h:662
uint32_t reason
Definition runtime.h:451
bool needs_repaint
Definition runtime.h:403
uint32_t mode
Definition runtime.h:401
bool placement_changed
Definition runtime.h:405
uint32_t mode
Definition runtime.h:412
uint32_t operation
Definition runtime.h:431
uint32_t type
Definition runtime.h:502
uint32_t payload_type
Definition runtime.h:535
uint64_t generation
Definition runtime.h:528
uint64_t source
Definition runtime.h:511
int32_t code
Definition runtime.h:533
mln_runtime_event_payload payload
Definition runtime.h:541
uint32_t source_type
Definition runtime.h:504
mln_buffer_view message
Definition runtime.h:537
mln_buffer_view asset_path
Definition runtime.h:374
mln_buffer_view cache_path
Definition runtime.h:376