MapLibre Native C API
Public C ABI for the MapLibre Native wrapper.
Loading...
Searching...
No Matches
linux.h
Go to the documentation of this file.
1
5
6#ifndef MAPLIBRE_NATIVE_C_PLATFORM_LINUX_H
7#define MAPLIBRE_NATIVE_C_PLATFORM_LINUX_H
8
9#include <stddef.h>
10#include <stdint.h>
11
12#include "../base.h"
13#include "../completion.h"
14#include "../map.h"
15#include "../render_session.h"
16#include "../render_target.h"
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
23typedef struct mln_dma_buf_format {
25 uint32_t fourcc;
27 uint64_t modifier;
29
41 uint32_t size;
42 mln_logical_size logical_size MLN_BINDING("required=true");
44 uint32_t buffer_count MLN_BINDING("required=true");
50 MLN_BINDING("length=format_count;required=true");
53
55typedef struct mln_dma_buf_plane {
60 int32_t fd;
62 uint32_t offset;
64 uint32_t stride;
66
68typedef struct mln_dma_buf_frame {
69 uint32_t size;
70 uint32_t width;
71 uint32_t height;
74 uint32_t slot;
75 uint32_t fourcc;
76 uint64_t modifier;
83 MLN_BINDING("length=plane_count;lifetime=owner");
86
114MLN_BINDING("execution=lifecycle;platforms=freebsd,linux")
116 mln_map map, const mln_dma_buf_ring_descriptor* descriptor,
117 mln_vulkan_device device MLN_BINDING("nullable=true"),
119 mln_render_session* out_session MLN_BINDING("direction=out"),
120 const mln_completion* completion, mln_diagnostic* out_diagnostic
121) MLN_NOEXCEPT;
122
145MLN_BINDING("view_owner=frame;platforms=freebsd,linux")
147 mln_acquired_frame frame,
148 mln_dma_buf_frame* out_frame MLN_BINDING("direction=out"),
149 mln_diagnostic* out_diagnostic
150) MLN_NOEXCEPT;
151
152#ifdef __cplusplus
153}
154#endif
155
156#endif // MAPLIBRE_NATIVE_C_PLATFORM_LINUX_H
uint64_t mln_render_session
Definition base.h:147
uint64_t mln_map
Definition base.h:112
uint64_t mln_vulkan_device
Definition base.h:127
uint64_t mln_acquired_frame
Definition base.h:154
mln_status
Definition base.h:41
mln_status mln_map_attach_dma_buf_ring(mln_map map, const mln_dma_buf_ring_descriptor *descriptor, mln_vulkan_device device, const mln_render_session_attach_options *options, mln_render_session *out_session, const mln_completion *completion, mln_diagnostic *out_diagnostic)
mln_status mln_acquired_frame_get_dma_buf(mln_acquired_frame frame, mln_dma_buf_frame *out_frame, mln_diagnostic *out_diagnostic)
Definition completion.h:66
Definition base.h:84
Definition linux.h:23
uint32_t fourcc
Definition linux.h:25
uint64_t modifier
Definition linux.h:27
Definition linux.h:68
uint32_t height
Definition linux.h:71
uint32_t width
Definition linux.h:70
size_t plane_count
Definition linux.h:84
const mln_dma_buf_plane * planes
Definition linux.h:83
uint32_t size
Definition linux.h:69
uint64_t modifier
Definition linux.h:76
double scale_factor
Definition linux.h:72
uint32_t fourcc
Definition linux.h:75
uint32_t slot
Definition linux.h:74
Definition linux.h:55
uint32_t stride
Definition linux.h:64
int32_t fd
Definition linux.h:60
uint32_t offset
Definition linux.h:62
Definition linux.h:40
const mln_dma_buf_format * formats
Definition linux.h:50
size_t format_count
Definition linux.h:51
mln_logical_size logical_size
Definition linux.h:42
uint32_t buffer_count
Definition linux.h:44
uint32_t size
Definition linux.h:41
Definition map.h:196
Definition render_target.h:125