PostGIS  2.4.9dev-r@@SVN_REVISION@@

◆ mvt_agg_init_context()

void mvt_agg_init_context ( struct mvt_agg_context ctx)

Initialize aggregation context.

Definition at line 848 of file mvt.c.

References mvt_agg_context::bool_values_hash, mvt_agg_context::double_values_hash, mvt_agg_context::extent, mvt_agg_context::features_capacity, FEATURES_CAPACITY_INITIAL, mvt_agg_context::float_values_hash, mvt_agg_context::geom_index, mvt_agg_context::keys_hash, mvt_agg_context::keys_hash_i, mvt_agg_context::layer, mvt_agg_context::name, mvt_agg_context::sint_values_hash, mvt_agg_context::string_values_hash, UINT32_MAX, mvt_agg_context::uint_values_hash, and mvt_agg_context::values_hash_i.

Referenced by pgis_asmvt_transfn().

849 {
850  VectorTile__Tile__Layer *layer;
851 
852  POSTGIS_DEBUG(2, "mvt_agg_init_context called");
853 
854  if (ctx->extent == 0)
855  elog(ERROR, "mvt_agg_init_context: extent cannot be 0");
856 
858  ctx->keys_hash = NULL;
859  ctx->string_values_hash = NULL;
860  ctx->float_values_hash = NULL;
861  ctx->double_values_hash = NULL;
862  ctx->uint_values_hash = NULL;
863  ctx->sint_values_hash = NULL;
864  ctx->bool_values_hash = NULL;
865  ctx->values_hash_i = 0;
866  ctx->keys_hash_i = 0;
867  ctx->geom_index = UINT32_MAX;
868 
869  layer = palloc(sizeof(*layer));
870  vector_tile__tile__layer__init(layer);
871  layer->version = 2;
872  layer->name = ctx->name;
873  layer->has_extent = 1;
874  layer->extent = ctx->extent;
875  layer->features = palloc (ctx->features_capacity *
876  sizeof(*layer->features));
877 
878  ctx->layer = layer;
879 }
struct mvt_kv_double_value * double_values_hash
Definition: mvt.h:61
struct mvt_kv_string_value * string_values_hash
Definition: mvt.h:59
char * name
Definition: mvt.h:50
struct mvt_kv_float_value * float_values_hash
Definition: mvt.h:60
VectorTile__Tile__Layer * layer
Definition: mvt.h:56
uint32_t keys_hash_i
Definition: mvt.h:66
size_t features_capacity
Definition: mvt.h:57
#define UINT32_MAX
Definition: lwin_wkt_lex.c:343
struct mvt_kv_uint_value * uint_values_hash
Definition: mvt.h:62
uint32_t geom_index
Definition: mvt.h:53
struct mvt_kv_bool_value * bool_values_hash
Definition: mvt.h:64
uint32_t values_hash_i
Definition: mvt.h:65
#define FEATURES_CAPACITY_INITIAL
Definition: mvt.c:40
uint32_t extent
Definition: mvt.h:51
struct mvt_kv_key * keys_hash
Definition: mvt.h:58
struct mvt_kv_sint_value * sint_values_hash
Definition: mvt.h:63
Here is the caller graph for this function: