MapLibre Native C API
Public C ABI for the MapLibre Native wrapper.
Loading...
Searching...
No Matches
base.h
Go to the documentation of this file.
1
5
6#ifndef MAPLIBRE_NATIVE_C_BASE_H
7#define MAPLIBRE_NATIVE_C_BASE_H
8
9#ifndef __cplusplus
10#include <stdbool.h>
11#endif
12
13#include <stddef.h>
14#include <stdint.h>
15
16#ifdef _WIN32
17#if defined(MLN_BUILDING_C)
18#define MLN_API __declspec(dllexport)
19#else
20#define MLN_API __declspec(dllimport)
21#endif
22#else
23#define MLN_API __attribute__((visibility("default")))
24#endif
25
26#ifdef __cplusplus
27#define MLN_NOEXCEPT noexcept
28#else
29#define MLN_NOEXCEPT
30#endif
31
32#ifdef __cplusplus
33extern "C" {
34#endif
35
51
53typedef enum mln_render_backend_flag : uint32_t {
54 MLN_RENDER_BACKEND_FLAG_METAL = 1u << 0u,
55 MLN_RENDER_BACKEND_FLAG_VULKAN = 1u << 1u,
56 MLN_RENDER_BACKEND_FLAG_OPENGL = 1u << 2u,
58
59typedef struct mln_runtime mln_runtime;
60typedef struct mln_map mln_map;
61typedef struct mln_map_projection mln_map_projection;
62typedef struct mln_offline_region_snapshot mln_offline_region_snapshot;
63typedef struct mln_offline_region_list mln_offline_region_list;
64typedef struct mln_json_snapshot mln_json_snapshot;
65typedef struct mln_resource_request_handle mln_resource_request_handle;
66typedef struct mln_render_session mln_render_session;
67
72MLN_API uint32_t mln_c_version(void) MLN_NOEXCEPT;
73
79MLN_API uint32_t mln_supported_render_backend_mask(void) MLN_NOEXCEPT;
80
81#ifdef __cplusplus
82}
83#endif
84
85#endif // MAPLIBRE_NATIVE_C_BASE_H
mln_status
Definition base.h:37
@ MLN_STATUS_NATIVE_ERROR
Definition base.h:49
@ MLN_STATUS_UNSUPPORTED
Definition base.h:47
@ MLN_STATUS_INVALID_STATE
Definition base.h:42
@ MLN_STATUS_WRONG_THREAD
Definition base.h:45
@ MLN_STATUS_INVALID_ARGUMENT
Definition base.h:40
mln_render_backend_flag
Definition base.h:53
uint32_t mln_supported_render_backend_mask(void)
uint32_t mln_c_version(void)