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
/* Generated with cbindgen:0.20.0 */
/* Warning, this file is autogenerated by cbindgen. Don't modify this manually. */
/**
* A C-compatible `struct` originating **inside** Rust
* used for passing arrays across the FFI boundary
*/
typedef struct InternalArray InternalArray;
/**
* A C-compatible `struct` originating **outside** Rust
* used for passing arrays across the FFI boundary
*/
typedef struct ExternalArray ExternalArray;
/**
* FFI wrapper for RDP, returning simplified geometry **coordinates**
*
* Callers must pass two arguments:
*
* - a [Struct](struct.Array.html) with two fields:
* - `data`, a void pointer to an array of floating-point point coordinates: `[[1.0, 2.0], ...]`
* - `len`, the length of the array being passed. Its type must be `size_t`
* - a double-precision `float` for the tolerance
*
* Implementations calling this function **must** call [`drop_float_array`](fn.drop_float_array.html)
* with the returned `Array` pointer, in order to free the memory it allocates.
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
struct InternalArray ;
/**
* FFI wrapper for RDP, returning simplified geometry **indices**
*
* Callers must pass two arguments:
*
* - a [Struct](struct.Array.html) with two fields:
* - `data`, a void pointer to an array of floating-point point coordinates: `[[1.0, 2.0], ...]`
* - `len`, the length of the array being passed. Its type must be `size_t`
* - a double-precision `float` for the tolerance
*
* Implementations calling this function **must** call [`drop_usize_array`](fn.drop_usize_array.html)
* with the returned `Array` pointer, in order to free the memory it allocates.
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
struct InternalArray ;
/**
* FFI wrapper for Visvalingam-Whyatt, returning simplified geometry **coordinates**
*
* Callers must pass two arguments:
*
* - a [Struct](struct.Array.html) with two fields:
* - `data`, a void pointer to an array of floating-point point coordinates: `[[1.0, 2.0], ...]`
* - `len`, the length of the array being passed. Its type must be `size_t`
* - a double-precision `float` for the epsilon
*
* Implementations calling this function **must** call [`drop_float_array`](fn.drop_float_array.html)
* with the returned `Array` pointer, in order to free the memory it allocates.
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
struct InternalArray ;
/**
* FFI wrapper for Visvalingam-Whyatt, returning simplified geometry **indices**
*
* Callers must pass two arguments:
*
* - a [Struct](struct.Array.html) with two fields:
* - `data`, a void pointer to an array of floating-point point coordinates: `[[1.0, 2.0], ...]`
* - `len`, the length of the array being passed. Its type must be `size_t`
* - a double-precision `float` for the epsilon
*
* Implementations calling this function **must** call [`drop_usize_array`](fn.drop_usize_array.html)
* with the returned `Array` pointer, in order to free the memory it allocates.
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
struct InternalArray ;
/**
* FFI wrapper for topology-preserving Visvalingam-Whyatt, returning simplified geometry **coordinates**.
*
* Callers must pass two arguments:
*
* - a [Struct](struct.Array.html) with two fields:
* - `data`, a void pointer to an array of floating-point point coordinates: `[[1.0, 2.0], ...]`
* - `len`, the length of the array being passed. Its type must be `size_t`
* - a double-precision `float` for the epsilon
*
* Implementations calling this function **must** call [`drop_float_array`](fn.drop_float_array.html)
* with the returned `Array` pointer, in order to free the memory it allocates.
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
struct InternalArray ;
/**
* Free memory which has been allocated across the FFI boundary by:
* - simplify_rdp_ffi
* - simplify_visvalingam_ffi
* - simplify_visvalingamp_ffi
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
void ;
/**
* Free memory which has been allocated across the FFI boundary by:
* - simplify_rdp_idx_ffi
* - simplify_visvalingam_idx_ffi
*
* # Safety
*
* This function is unsafe because it accesses a raw pointer which could contain arbitrary data
*/
void ;