PostGIS 3.0.6dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ gserialized2_from_lwgeom_size()

size_t gserialized2_from_lwgeom_size ( const LWGEOM geom)

Return the memory size a GSERIALIZED will occupy for a given LWGEOM.

Definition at line 807 of file gserialized2.c.

808{
809 size_t size = 8; /* Header overhead (varsize+flags+srid) */
810 assert(geom);
811
812 /* Reserve space for extended flags */
814 size += 8;
815
816 /* Reserve space for bounding box */
817 if (geom->bbox)
818 size += gbox_serialized_size(geom->flags);
819
820 size += gserialized2_from_any_size(geom);
821 LWDEBUGF(3, "%s size = %d", __func__, size);
822
823 return size;
824}
size_t gbox_serialized_size(lwflags_t flags)
Return the number of bytes necessary to hold a GBOX of this dimension in serialized form.
Definition gbox.c:440
static int lwflags_uses_extended_flags(lwflags_t lwflags)
static size_t gserialized2_from_any_size(const LWGEOM *geom)
#define LWDEBUGF(level, msg,...)
Definition lwgeom_log.h:88
GBOX * bbox
Definition liblwgeom.h:444
lwflags_t flags
Definition liblwgeom.h:447

References LWGEOM::bbox, LWGEOM::flags, gbox_serialized_size(), gserialized2_from_any_size(), LWDEBUGF, and lwflags_uses_extended_flags().

Referenced by gserialized2_from_lwgeom(), gserialized_from_lwgeom_size(), test_gserialized2_extended_flags(), test_gserialized2_from_lwgeom_size(), test_gserialized2_peek_gbox_p_fails_for_unsupported_cases(), and test_lwgeom_from_gserialized2().

Here is the call graph for this function:
Here is the caller graph for this function: