PostGIS  2.4.9dev-r@@SVN_REVISION@@
geobuf.c File Reference
#include <math.h>
#include "geobuf.h"
Include dependency graph for geobuf.c:

Go to the source code of this file.

Macros

#define FEATURES_CAPACITY_INITIAL   50
 
#define MAX_PRECISION   1e6
 

Functions

static Data__Geometry * encode_geometry (struct geobuf_agg_context *ctx, LWGEOM *lwgeom)
 
static Data__Geometry * galloc (Data__Geometry__Type type)
 
static TupleDesc get_tuple_desc (struct geobuf_agg_context *ctx)
 
static void encode_keys (struct geobuf_agg_context *ctx)
 
static void set_int_value (Data__Value *value, int64 intval)
 
static void encode_properties (struct geobuf_agg_context *ctx, Data__Feature *feature)
 
static int64_t * encode_coords (struct geobuf_agg_context *ctx, POINTARRAY *pa, int64_t *coords, int len, int offset)
 
static Data__Geometry * encode_point (struct geobuf_agg_context *ctx, LWPOINT *lwpoint)
 
static Data__Geometry * encode_mpoint (struct geobuf_agg_context *ctx, LWMPOINT *lwmpoint)
 
static Data__Geometry * encode_line (struct geobuf_agg_context *ctx, LWLINE *lwline)
 
static Data__Geometry * encode_mline (struct geobuf_agg_context *ctx, LWMLINE *lwmline)
 
static Data__Geometry * encode_poly (struct geobuf_agg_context *ctx, LWPOLY *lwpoly)
 
static Data__Geometry * encode_mpoly (struct geobuf_agg_context *ctx, LWMPOLY *lwmpoly)
 
static Data__Geometry * encode_collection (struct geobuf_agg_context *ctx, LWCOLLECTION *lwcollection)
 
static void analyze_val (struct geobuf_agg_context *ctx, double val)
 
static void analyze_pa (struct geobuf_agg_context *ctx, POINTARRAY *pa)
 
static void analyze_geometry (struct geobuf_agg_context *ctx, LWGEOM *lwgeom)
 
static void analyze_geometry_flags (struct geobuf_agg_context *ctx, LWGEOM *lwgeom)
 
static Data__Feature * encode_feature (struct geobuf_agg_context *ctx)
 
void geobuf_agg_init_context (struct geobuf_agg_context *ctx)
 Initialize aggregation context. More...
 
void geobuf_agg_transfn (struct geobuf_agg_context *ctx)
 Aggregation step. More...
 
uint8_tgeobuf_agg_finalfn (struct geobuf_agg_context *ctx)
 Finalize aggregation. More...