PostGIS  2.5.0dev-r@@SVN_REVISION@@
size_t gserialized_from_lwgeom_size ( const LWGEOM geom)

Calculate required memory segment to contain a serialized form of the LWGEOM.

Primarily used internally by the serialization code. Exposed to allow the cunit tests to exercise it.

Definition at line 807 of file g_serialized.c.

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

Referenced by gserialized_from_lwgeom(), test_gserialized_from_lwgeom_size(), and test_gserialized_peek_gbox_p_fails_for_unsupported_cases().

808 {
809  size_t size = 8; /* Header overhead. */
810  assert(geom);
811 
812  if ( geom->bbox )
813  size += gbox_serialized_size(geom->flags);
814 
815  size += gserialized_from_any_size(geom);
816  LWDEBUGF(3, "g_serialize size = %d", size);
817 
818  return size;
819 }
GBOX * bbox
Definition: liblwgeom.h:397
uint8_t flags
Definition: liblwgeom.h:396
static size_t gserialized_from_any_size(const LWGEOM *geom)
Definition: g_serialized.c:772
#define LWDEBUGF(level, msg,...)
Definition: lwgeom_log.h:88
size_t gbox_serialized_size(uint8_t flags)
Return the number of bytes necessary to hold a GBOX of this dimension in serialized form...
Definition: g_box.c:446

Here is the call graph for this function:

Here is the caller graph for this function: