HydroCouple  2.0.0
HydroCouple Interface Definitions
Loading...
Searching...
No Matches
hydrocouplespatialwkb.h
Go to the documentation of this file.
1
23#ifndef HYDROCOUPLESPATIALWKB_H
24#define HYDROCOUPLESPATIALWKB_H
25
26#include <stdint.h>
27#include <type_traits>
28
29union WKBGeometry;
30union WKBGeometryZ;
31union WKBGeometryM;
32union WKBGeometryZM;
33
37struct Point
38{
39 double x;
40 double y;
41};
42
46struct PointZ
47{
48 double x;
49 double y;
50 double z;
51};
52
56struct PointM
57{
58 double x;
59 double y;
60 double m;
61};
62
66struct PointZM
67{
68 double x;
69 double y;
70 double z;
71 double m;
72};
73
78{
79 uint32_t numPoints;
81};
82
87{
88 uint32_t numPoints;
90};
91
96{
97 uint32_t numPoints;
99};
100
105{
106 uint32_t numPoints;
108};
109
113enum class WKBByteOrder : uint8_t
114{
115 wkbXDR = 0,
116 wkbNDR = 1
117};
118
122enum class WKBGeometryType : uint32_t
123{
124 wkbPoint = 1,
125 wkbLineString = 2,
126 wkbPolygon = 3,
127 wkbTriangle = 17,
128 wkbMultiPoint = 4,
130 wkbMultiPolygon = 6,
133 wkbTIN = 16,
134 wkbPointZ = 1001,
135 wkbLineStringZ = 1002,
136 wkbPolygonZ = 1003,
137 wkbTriangleZ = 1017,
138 wkbMultiPointZ = 1004,
139 wkbMultiLineStringZ = 1005,
140 wkbMultiPolygonZ = 1006,
143 wkbTINZ = 1016,
144 wkbPointM = 2001,
145 wkbLineStringM = 2002,
146 wkbPolygonM = 2003,
147 wkbTriangleM = 2017,
148 wkbMultiPointM = 2004,
149 wkbMultiLineStringM = 2005,
150 wkbMultiPolygonM = 2006,
153 wkbTINM = 2016,
154 wkbPointZM = 3001,
155 wkbLineStringZM = 3002,
156 wkbPolygonZM = 3003,
157 wkbTriangleZM = 3017,
158 wkbMultiPointZM = 3004,
160 wkbMultiPolygonZM = 3006,
163 wkbTinZM = 3016,
164};
165
170{
172 static constexpr uint32_t wkbType = 1;
174};
175
180{
182 static constexpr uint32_t wkbType = 1001;
184};
185
190{
192 static constexpr uint32_t wkbType = 2001;
194};
195
200{
202 static constexpr uint32_t wkbType = 3001;
204};
205
210{
212 static constexpr uint32_t wkbType = 2;
213 uint32_t numPoints;
215};
216
221{
223 static constexpr uint32_t wkbType = 1002;
224 uint32_t numPoints;
226};
227
232{
234 static constexpr uint32_t wkbType = 2002;
235 uint32_t numPoints;
237};
238
243{
245 static constexpr uint32_t wkbType = 3002;
246 uint32_t numPoints;
248};
249
254{
256 static constexpr uint32_t wkbType = 3;
257 uint32_t numRings;
259};
260
265{
267 static constexpr uint32_t wkbType = 1003;
268 uint32_t numRings;
270};
271
276{
278 static constexpr uint32_t wkbType = 2003;
279 uint32_t numRings;
281};
282
288 static constexpr uint32_t wkbType = 3003;
289 uint32_t numRings;
291};
292
298 static constexpr uint32_t wkbType = 17;
299 uint32_t numRings;
301};
302
308 static constexpr uint32_t wkbType = 1017;
309 uint32_t numRings;
311};
312
318 static constexpr uint32_t wkbType = 2017;
319 uint32_t numRings;
321};
322
328 static constexpr uint32_t wkbType = 3017;
329 uint32_t numRings;
331};
332
338 static constexpr uint32_t wkbType = 15;
339 uint32_t numPolygons;
341};
342
348 static constexpr uint32_t wkbType=1015;
349 uint32_t numPolygons;
351};
352
358 static constexpr uint32_t wkbType=2015;
359 uint32_t numPolygons;
361};
362
372
376struct WKBTIN {
378 static constexpr uint32_t wkbType = 16;
379 uint32_t numPolygons;
381};
382
386struct WKBTINZ {
388 static constexpr uint32_t wkbType=1016;
389 uint32_t numPolygons;
391};
392
396struct WKBTINM {
398 static constexpr uint32_t wkbType=2016;
399 uint32_t numPolygons;
401};
402
406struct WKBTINZM {
408 static constexpr uint32_t wkbType=3016;
409 uint32_t numPolygons;
411};
412
418 static constexpr uint32_t wkbType=4;
419 uint32_t numPoints;
421};
422
428 static constexpr uint32_t wkbType=1004;
429 uint32_t numPoints;
431};
432
438 static constexpr uint32_t wkbType=2004;
439 uint32_t numPoints;
441};
442
448 static constexpr uint32_t wkbType=3004;
449 uint32_t numPoints;
451};
452
462
472
482
492
498 static constexpr uint32_t wkbType = 6;
499 uint32_t numPolygons;
501};
502
508 static constexpr uint32_t wkbType = 1006;
509 uint32_t numPolygons;
511};
512
518 static constexpr uint32_t wkbType = 2006;
519 uint32_t numPolygons;
521};
522
528 static constexpr uint32_t wkbType = 3006;
529 uint32_t numPolygons;
531};
532
542
552
562
572
591
608
625
642
643// ============================================================================
644// Structure-of-Arrays (SoA) coordinate buffers for cache-efficient bulk processing.
645// These provide non-owning views into contiguous coordinate component arrays,
646// enabling SIMD-friendly iteration over individual coordinate dimensions.
647// ============================================================================
648
656{
657 double *x;
658 double *y;
659 uint32_t count;
660};
661
666{
667 double *x;
668 double *y;
669 double *z;
670 uint32_t count;
671};
672
677{
678 double *x;
679 double *y;
680 double *m;
681 uint32_t count;
682};
683
688{
689 double *x;
690 double *y;
691 double *z;
692 double *m;
693 uint32_t count;
694};
695
696// ============================================================================
697// Compile-time type property assertions
698// ============================================================================
699
700static_assert(std::is_trivially_copyable_v<Point>, "Point must be trivially copyable");
701static_assert(std::is_trivially_copyable_v<PointZ>, "PointZ must be trivially copyable");
702static_assert(std::is_trivially_copyable_v<PointM>, "PointM must be trivially copyable");
703static_assert(std::is_trivially_copyable_v<PointZM>, "PointZM must be trivially copyable");
704static_assert(std::is_trivially_copyable_v<LinearRing>, "LinearRing must be trivially copyable");
705static_assert(std::is_trivially_copyable_v<CoordinateBuffer2D>, "CoordinateBuffer2D must be trivially copyable");
706static_assert(std::is_trivially_copyable_v<CoordinateBuffer3D>, "CoordinateBuffer3D must be trivially copyable");
707static_assert(std::is_trivially_copyable_v<CoordinateBuffer3DM>, "CoordinateBuffer3DM must be trivially copyable");
708
709static_assert(std::is_standard_layout_v<Point>, "Point must be standard layout");
710static_assert(std::is_standard_layout_v<PointZ>, "PointZ must be standard layout");
711static_assert(std::is_standard_layout_v<PointM>, "PointM must be standard layout");
712static_assert(std::is_standard_layout_v<PointZM>, "PointZM must be standard layout");
713static_assert(std::is_standard_layout_v<CoordinateBuffer2D>, "CoordinateBuffer2D must be standard layout");
714static_assert(std::is_standard_layout_v<CoordinateBuffer3D>, "CoordinateBuffer3D must be standard layout");
715static_assert(std::is_standard_layout_v<CoordinateBuffer3DM>, "CoordinateBuffer3DM must be standard layout");
716
717static_assert(sizeof(Point) == 2 * sizeof(double), "Point must have no padding");
718static_assert(sizeof(PointZ) == 3 * sizeof(double), "PointZ must have no padding");
719static_assert(sizeof(PointM) == 3 * sizeof(double), "PointM must have no padding");
720static_assert(sizeof(PointZM) == 4 * sizeof(double), "PointZM must have no padding");
721
722#endif // HYDROCOUPLESPATIALWKB_H
WKBByteOrder
The WKBByteOrder enum class indicates the byte order of serialized WKB data.
Definition hydrocouplespatialwkb.h:114
@ wkbNDR
Little Endian.
@ wkbXDR
Big Endian.
WKBGeometryType
The WKBGeometryType enum class enumerates OGC WKB geometry type codes.
Definition hydrocouplespatialwkb.h:123
Non-owning SoA view over 2D coordinate data (x, y stored in separate arrays).
Definition hydrocouplespatialwkb.h:656
double * x
Pointer to contiguous array of x-coordinates.
Definition hydrocouplespatialwkb.h:657
uint32_t count
Number of coordinate tuples.
Definition hydrocouplespatialwkb.h:659
double * y
Pointer to contiguous array of y-coordinates.
Definition hydrocouplespatialwkb.h:658
Non-owning SoA view over 3D coordinate data (x, y, z stored in separate arrays).
Definition hydrocouplespatialwkb.h:666
double * y
Pointer to contiguous array of y-coordinates.
Definition hydrocouplespatialwkb.h:668
double * z
Pointer to contiguous array of z-coordinates.
Definition hydrocouplespatialwkb.h:669
uint32_t count
Number of coordinate tuples.
Definition hydrocouplespatialwkb.h:670
double * x
Pointer to contiguous array of x-coordinates.
Definition hydrocouplespatialwkb.h:667
Non-owning SoA view over 3D+M coordinate data (x, y, z, m stored in separate arrays).
Definition hydrocouplespatialwkb.h:688
double * x
Pointer to contiguous array of x-coordinates.
Definition hydrocouplespatialwkb.h:689
double * m
Pointer to contiguous array of measure values.
Definition hydrocouplespatialwkb.h:692
double * z
Pointer to contiguous array of z-coordinates.
Definition hydrocouplespatialwkb.h:691
uint32_t count
Number of coordinate tuples.
Definition hydrocouplespatialwkb.h:693
double * y
Pointer to contiguous array of y-coordinates.
Definition hydrocouplespatialwkb.h:690
Non-owning SoA view over 2D+M coordinate data (x, y, m stored in separate arrays).
Definition hydrocouplespatialwkb.h:677
double * m
Pointer to contiguous array of measure values.
Definition hydrocouplespatialwkb.h:680
double * x
Pointer to contiguous array of x-coordinates.
Definition hydrocouplespatialwkb.h:678
uint32_t count
Number of coordinate tuples.
Definition hydrocouplespatialwkb.h:681
double * y
Pointer to contiguous array of y-coordinates.
Definition hydrocouplespatialwkb.h:679
A closed sequence of 2D Points forming a ring boundary.
Definition hydrocouplespatialwkb.h:78
Point * points
Definition hydrocouplespatialwkb.h:80
uint32_t numPoints
Definition hydrocouplespatialwkb.h:79
A closed sequence of PointM values forming a ring boundary with measures.
Definition hydrocouplespatialwkb.h:96
uint32_t numPoints
Definition hydrocouplespatialwkb.h:97
PointM * points
Definition hydrocouplespatialwkb.h:98
A closed sequence of 3D PointZ values forming a ring boundary.
Definition hydrocouplespatialwkb.h:87
uint32_t numPoints
Definition hydrocouplespatialwkb.h:88
PointZ * points
Definition hydrocouplespatialwkb.h:89
A closed sequence of PointZM values forming a ring boundary with z and measure.
Definition hydrocouplespatialwkb.h:105
uint32_t numPoints
Definition hydrocouplespatialwkb.h:106
PointZM * points
Definition hydrocouplespatialwkb.h:107
A 2D point with x and y coordinates.
Definition hydrocouplespatialwkb.h:38
double x
The x-coordinate.
Definition hydrocouplespatialwkb.h:39
double y
The y-coordinate.
Definition hydrocouplespatialwkb.h:40
A 2D point with x, y, and an associated measure (m) value.
Definition hydrocouplespatialwkb.h:57
double x
The x-coordinate.
Definition hydrocouplespatialwkb.h:58
double m
The measure value.
Definition hydrocouplespatialwkb.h:60
double y
The y-coordinate.
Definition hydrocouplespatialwkb.h:59
A 3D point with x, y, and z coordinates.
Definition hydrocouplespatialwkb.h:47
double z
The z-coordinate (elevation).
Definition hydrocouplespatialwkb.h:50
double y
The y-coordinate.
Definition hydrocouplespatialwkb.h:49
double x
The x-coordinate.
Definition hydrocouplespatialwkb.h:48
A 3D point with x, y, z coordinates and an associated measure (m) value.
Definition hydrocouplespatialwkb.h:67
double x
The x-coordinate.
Definition hydrocouplespatialwkb.h:68
double m
The measure value.
Definition hydrocouplespatialwkb.h:71
double z
The z-coordinate (elevation).
Definition hydrocouplespatialwkb.h:70
double y
The y-coordinate.
Definition hydrocouplespatialwkb.h:69
WKB-encoded heterogeneous 2D geometry collection (type code 7).
Definition hydrocouplespatialwkb.h:536
WKBGeometry * geometries
Definition hydrocouplespatialwkb.h:540
uint32_t numGeometries
Definition hydrocouplespatialwkb.h:539
WKBByteOrder byte_order
Definition hydrocouplespatialwkb.h:537
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:538
WKB-encoded heterogeneous 2D geometry collection with measures (type code 2007).
Definition hydrocouplespatialwkb.h:556
WKBByteOrder byte_order
Definition hydrocouplespatialwkb.h:557
WKBGeometryM * geometries
Definition hydrocouplespatialwkb.h:560
uint32_t numGeometries
Definition hydrocouplespatialwkb.h:559
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:558
WKB-encoded heterogeneous 3D geometry collection with z-coordinates (type code 1007).
Definition hydrocouplespatialwkb.h:546
uint32_t numGeometries
Definition hydrocouplespatialwkb.h:549
WKBGeometryZ * geometries
Definition hydrocouplespatialwkb.h:550
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:548
WKBByteOrder byte_order
Definition hydrocouplespatialwkb.h:547
WKB-encoded heterogeneous 3D geometry collection with z-coordinates and measures (type code 3007).
Definition hydrocouplespatialwkb.h:566
uint32_t numGeometries
Definition hydrocouplespatialwkb.h:569
WKBByteOrder byte_order
Definition hydrocouplespatialwkb.h:567
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:568
WKBGeometryZM * geometries
Definition hydrocouplespatialwkb.h:570
WKB-encoded 2D line string geometry (type code 2).
Definition hydrocouplespatialwkb.h:210
Point * points
Definition hydrocouplespatialwkb.h:214
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:212
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:211
uint32_t numPoints
Definition hydrocouplespatialwkb.h:213
WKB-encoded 2D line string geometry with measures (type code 2002).
Definition hydrocouplespatialwkb.h:232
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:234
PointM * points
Definition hydrocouplespatialwkb.h:236
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:233
uint32_t numPoints
Definition hydrocouplespatialwkb.h:235
WKB-encoded 3D line string geometry with z-coordinates (type code 1002).
Definition hydrocouplespatialwkb.h:221
PointZ * points
Definition hydrocouplespatialwkb.h:225
uint32_t numPoints
Definition hydrocouplespatialwkb.h:224
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:223
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:222
WKB-encoded 3D line string geometry with z-coordinates and measures (type code 3002).
Definition hydrocouplespatialwkb.h:243
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:245
uint32_t numPoints
Definition hydrocouplespatialwkb.h:246
PointZM * points
Definition hydrocouplespatialwkb.h:247
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:244
WKB-encoded 2D multi-line-string collection (type code 5).
Definition hydrocouplespatialwkb.h:456
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:458
WKBLineString * lineStrings
Definition hydrocouplespatialwkb.h:460
uint32_t numLineStrings
Definition hydrocouplespatialwkb.h:459
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:457
WKB-encoded 2D multi-line-string collection with measures (type code 2005).
Definition hydrocouplespatialwkb.h:476
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:478
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:477
WKBLineStringM * lineStrings
Definition hydrocouplespatialwkb.h:480
uint32_t numLineStrings
Definition hydrocouplespatialwkb.h:479
WKB-encoded 3D multi-line-string collection with z-coordinates (type code 1005).
Definition hydrocouplespatialwkb.h:466
WKBLineStringZ * lineStrings
Definition hydrocouplespatialwkb.h:470
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:467
uint32_t numLineStrings
Definition hydrocouplespatialwkb.h:469
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:468
WKB-encoded 3D multi-line-string collection with z-coordinates and measures (type code 3005).
Definition hydrocouplespatialwkb.h:486
WKBLineStringZM * lineStrings
Definition hydrocouplespatialwkb.h:490
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:487
uint32_t numLineStrings
Definition hydrocouplespatialwkb.h:489
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:488
WKB-encoded 2D multi-point collection (type code 4).
Definition hydrocouplespatialwkb.h:416
WKBPoint * points
Definition hydrocouplespatialwkb.h:420
uint32_t numPoints
Definition hydrocouplespatialwkb.h:419
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:418
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:417
WKB-encoded 2D multi-point collection with measures (type code 2004).
Definition hydrocouplespatialwkb.h:436
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:438
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:437
WKBPointM * points
Definition hydrocouplespatialwkb.h:440
uint32_t numPoints
Definition hydrocouplespatialwkb.h:439
WKB-encoded 3D multi-point collection with z-coordinates (type code 1004).
Definition hydrocouplespatialwkb.h:426
uint32_t numPoints
Definition hydrocouplespatialwkb.h:429
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:428
WKBPointZ * points
Definition hydrocouplespatialwkb.h:430
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:427
WKB-encoded 3D multi-point collection with z-coordinates and measures (type code 3004).
Definition hydrocouplespatialwkb.h:446
uint32_t numPoints
Definition hydrocouplespatialwkb.h:449
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:448
WKBPointZM * points
Definition hydrocouplespatialwkb.h:450
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:447
WKB-encoded 2D multi-polygon collection (type code 6).
Definition hydrocouplespatialwkb.h:496
WKBPolygon * polygons
Definition hydrocouplespatialwkb.h:500
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:497
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:499
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:498
WKB-encoded 2D multi-polygon collection with measures (type code 2006).
Definition hydrocouplespatialwkb.h:516
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:518
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:519
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:517
WKBPolygonM * polygons
Definition hydrocouplespatialwkb.h:520
WKB-encoded 3D multi-polygon collection with z-coordinates (type code 1006).
Definition hydrocouplespatialwkb.h:506
WKBPolygonZ * polygons
Definition hydrocouplespatialwkb.h:510
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:508
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:509
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:507
WKB-encoded 3D multi-polygon collection with z-coordinates and measures (type code 3006).
Definition hydrocouplespatialwkb.h:526
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:528
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:527
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:529
WKBPolygonZM * polygons
Definition hydrocouplespatialwkb.h:530
WKB-encoded 2D point geometry (type code 1).
Definition hydrocouplespatialwkb.h:170
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:171
Point point
Definition hydrocouplespatialwkb.h:173
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:172
WKB-encoded 2D point geometry with measure (type code 2001).
Definition hydrocouplespatialwkb.h:190
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:191
PointM point
Definition hydrocouplespatialwkb.h:193
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:192
WKB-encoded 3D point geometry with z-coordinate (type code 1001).
Definition hydrocouplespatialwkb.h:180
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:182
PointZ point
Definition hydrocouplespatialwkb.h:183
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:181
WKB-encoded 3D point geometry with z-coordinate and measure (type code 3001).
Definition hydrocouplespatialwkb.h:200
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:201
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:202
PointZM point
Definition hydrocouplespatialwkb.h:203
WKB-encoded 2D polygon geometry defined by linear rings (type code 3).
Definition hydrocouplespatialwkb.h:254
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:255
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:256
LinearRing * rings
Definition hydrocouplespatialwkb.h:258
uint32_t numRings
Definition hydrocouplespatialwkb.h:257
WKB-encoded 2D polygon geometry with measures (type code 2003).
Definition hydrocouplespatialwkb.h:276
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:278
uint32_t numRings
Definition hydrocouplespatialwkb.h:279
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:277
LinearRingM * rings
Definition hydrocouplespatialwkb.h:280
WKB-encoded 3D polygon geometry with z-coordinates (type code 1003).
Definition hydrocouplespatialwkb.h:265
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:266
uint32_t numRings
Definition hydrocouplespatialwkb.h:268
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:267
LinearRingZ * rings
Definition hydrocouplespatialwkb.h:269
WKB-encoded 3D polygon geometry with z-coordinates and measures (type code 3003).
Definition hydrocouplespatialwkb.h:286
LinearRingZM * rings
Definition hydrocouplespatialwkb.h:290
uint32_t numRings
Definition hydrocouplespatialwkb.h:289
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:287
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:288
WKB-encoded 2D polyhedral surface as a collection of polygons (type code 15).
Definition hydrocouplespatialwkb.h:336
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:337
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:339
WKBPolygon * polygons
Definition hydrocouplespatialwkb.h:340
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:338
WKB-encoded 2D polyhedral surface with measures (type code 2015).
Definition hydrocouplespatialwkb.h:356
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:357
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:359
WKBPolygonM * polygons
Definition hydrocouplespatialwkb.h:360
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:358
WKB-encoded 3D polyhedral surface with z-coordinates (type code 1015).
Definition hydrocouplespatialwkb.h:346
WKBPolygonZ * polygons
Definition hydrocouplespatialwkb.h:350
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:347
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:348
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:349
WKB-encoded 3D polyhedral surface with z-coordinates and measures (type code 3015).
Definition hydrocouplespatialwkb.h:366
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:367
WKBPolygonZM * polygons
Definition hydrocouplespatialwkb.h:370
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:369
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:368
WKB-encoded 2D Triangulated Irregular Network (type code 16).
Definition hydrocouplespatialwkb.h:376
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:378
WKBPolygon * polygons
Definition hydrocouplespatialwkb.h:380
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:379
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:377
WKB-encoded 2D Triangulated Irregular Network with measures (type code 2016).
Definition hydrocouplespatialwkb.h:396
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:399
WKBPolygonM * polygons
Definition hydrocouplespatialwkb.h:400
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:397
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:398
WKB-encoded 3D Triangulated Irregular Network with z-coordinates (type code 1016).
Definition hydrocouplespatialwkb.h:386
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:388
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:389
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:387
WKBPolygonZ * polygons
Definition hydrocouplespatialwkb.h:390
WKB-encoded 3D Triangulated Irregular Network with z-coordinates and measures (type code 3016).
Definition hydrocouplespatialwkb.h:406
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:407
uint32_t numPolygons
Definition hydrocouplespatialwkb.h:409
WKBPolygonZM * polygons
Definition hydrocouplespatialwkb.h:410
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:408
WKB-encoded 2D triangle geometry with exactly one exterior ring of four points (type code 17).
Definition hydrocouplespatialwkb.h:296
LinearRing * rings
Definition hydrocouplespatialwkb.h:300
uint32_t numRings
Definition hydrocouplespatialwkb.h:299
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:298
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:297
WKB-encoded 2D triangle geometry with measures (type code 2017).
Definition hydrocouplespatialwkb.h:316
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:317
LinearRingM * rings
Definition hydrocouplespatialwkb.h:320
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:318
uint32_t numRings
Definition hydrocouplespatialwkb.h:319
WKB-encoded 3D triangle geometry with z-coordinates (type code 1017).
Definition hydrocouplespatialwkb.h:306
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:307
uint32_t numRings
Definition hydrocouplespatialwkb.h:309
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:308
LinearRingZ * rings
Definition hydrocouplespatialwkb.h:310
WKB-encoded 3D triangle geometry with z-coordinates and measures (type code 3017).
Definition hydrocouplespatialwkb.h:326
static constexpr uint32_t wkbType
Definition hydrocouplespatialwkb.h:328
WKBByteOrder byteOrder
Definition hydrocouplespatialwkb.h:327
LinearRingZM * rings
Definition hydrocouplespatialwkb.h:330
uint32_t numRings
Definition hydrocouplespatialwkb.h:329
Type-punning union over all 2D WKB geometry structs.
Definition hydrocouplespatialwkb.h:579
WKBLineString linestring
Definition hydrocouplespatialwkb.h:581
WKBGeometryCollection collection
Definition hydrocouplespatialwkb.h:589
WKBMultiLineString mlinestring
Definition hydrocouplespatialwkb.h:587
WKBMultiPolygon mpolygon
Definition hydrocouplespatialwkb.h:588
WKBMultiPoint mpoint
Definition hydrocouplespatialwkb.h:586
WKBPoint point
Definition hydrocouplespatialwkb.h:580
WKBPolyhedralSurface polyhedralsurface
Definition hydrocouplespatialwkb.h:584
WKBTriangle triangle
Definition hydrocouplespatialwkb.h:583
WKBPolygon polygon
Definition hydrocouplespatialwkb.h:582
WKBTIN tin
Definition hydrocouplespatialwkb.h:585
Type-punning union over all 2D+M WKB geometry structs.
Definition hydrocouplespatialwkb.h:613
WKBMultiPointM mpointm
Definition hydrocouplespatialwkb.h:620
WKBPolygonM polygonm
Definition hydrocouplespatialwkb.h:616
WKBMultiLineStringM mlinestringm
Definition hydrocouplespatialwkb.h:621
WKBTriangleM trianglem
Definition hydrocouplespatialwkb.h:617
WKBPolyhedralSurfaceM Polyhedralsurfacem
Definition hydrocouplespatialwkb.h:618
WKBMultiPolygonM mpolygonm
Definition hydrocouplespatialwkb.h:622
WKBGeometryCollectionM collectionm
Definition hydrocouplespatialwkb.h:623
WKBLineStringM linestringm
Definition hydrocouplespatialwkb.h:615
WKBPointM pointm
Definition hydrocouplespatialwkb.h:614
WKBTINM tinm
Definition hydrocouplespatialwkb.h:619
Type-punning union over all 3D (Z) WKB geometry structs.
Definition hydrocouplespatialwkb.h:595
WKBPolyhedralSurfaceZ Polyhedralsurfacez
Definition hydrocouplespatialwkb.h:601
WKBLineStringZ linestringz
Definition hydrocouplespatialwkb.h:598
WKBMultiLineStringZ mlinestringz
Definition hydrocouplespatialwkb.h:604
WKBPolygonZ polygonz
Definition hydrocouplespatialwkb.h:599
WKBMultiPointZ mpointz
Definition hydrocouplespatialwkb.h:603
WKBTriangleZ trianglez
Definition hydrocouplespatialwkb.h:600
WKBGeometryCollectionZ collectionz
Definition hydrocouplespatialwkb.h:606
WKBTINZ tinz
Definition hydrocouplespatialwkb.h:602
WKBPointZ pointz
Definition hydrocouplespatialwkb.h:597
WKBMultiPolygonZ mpolygonz
Definition hydrocouplespatialwkb.h:605
Type-punning union over all 3D+M WKB geometry structs.
Definition hydrocouplespatialwkb.h:630
WKBPointZM pointzm
Definition hydrocouplespatialwkb.h:631
WKBTINZM tinzm
Definition hydrocouplespatialwkb.h:636
WKBMultiPolygonZM mpolygonzm
Definition hydrocouplespatialwkb.h:639
WKBMultiPointZM mpointzm
Definition hydrocouplespatialwkb.h:637
WKBTriangleZM trianglezm
Definition hydrocouplespatialwkb.h:634
WKBMultiLineStringZM mlinestringzm
Definition hydrocouplespatialwkb.h:638
WKBGeometryCollectionZM collectionzm
Definition hydrocouplespatialwkb.h:640
WKBPolygonZM polygonzm
Definition hydrocouplespatialwkb.h:633
WKBLineStringZM linestringzm
Definition hydrocouplespatialwkb.h:632
WKBPolyhedralSurfaceZM Polyhedralsurfacezm
Definition hydrocouplespatialwkb.h:635