Aggregation step.
Expands features array if needed by a factor of 2. Allocates a new feature, increment feature counter and encode properties into it.
Definition at line 526 of file flatgeobuf.c.
527{
529 bool isnull = false;
530 Datum datum;
532
533 if (ctx->
ctx->features_count == 0)
535
536 datum = GetAttributeByNum(ctx->
row, ctx->
geom_index + 1, &isnull);
537 if (!isnull) {
540 }
541 ctx->
ctx->lwgeom = lwgeom;
542
543 if (ctx->
ctx->features_count == 0)
544 flatgeobuf_encode_header(ctx->
ctx);
545
547 if (ctx->
ctx->create_index)
549 flatgeobuf_encode_feature(ctx->
ctx);
550}
static void inspect_table(struct flatgeobuf_agg_ctx *ctx)
static void encode_properties(flatgeobuf_agg_ctx *ctx)
static void ensure_items_len(struct flatgeobuf_agg_ctx *ctx)
LWGEOM * lwgeom_from_gserialized(const GSERIALIZED *g)
Allocate a new LWGEOM from a GSERIALIZED.
References flatgeobuf_agg_ctx::ctx, encode_properties(), ensure_items_len(), inspect_table(), and lwgeom_from_gserialized().
Referenced by pgis_asflatgeobuf_transfn().