PostGIS 3.7.0dev-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 777 of file gserialized2.c.

778{
779 size_t size = 8; /* Header overhead (varsize+flags+srid) */
780 assert(geom);
781
782 /* Reserve space for extended flags */
784 size += 8;
785
786 /* Reserve space for bounding box */
787 if (geom->bbox)
788 size += gbox_serialized_size(geom->flags);
789
790 size += gserialized2_from_any_size(geom);
791 LWDEBUGF(3, "%s size = %zu", __func__, size);
792
793 return size;
794}
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:452
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:106
GBOX * bbox
Definition liblwgeom.h:458
lwflags_t flags
Definition liblwgeom.h:461

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: