PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ MVT_PARSE_VALUE

#define MVT_PARSE_VALUE (   hash,
  newvalue,
  size,
  pfvaluefield,
  pftype 
)
Value:
{ \
POSTGIS_DEBUG(2, "MVT_PARSE_VALUE called"); \
{ \
struct mvt_kv_value *kv; \
unsigned hashv; \
HASH_VALUE(&newvalue, size, hashv); \
HASH_FIND_BYHASHVALUE(hh, ctx->hash, &newvalue, size, hashv, kv); \
if (!kv) \
{ \
POSTGIS_DEBUG(4, "MVT_PARSE_VALUE value not found"); \
kv = palloc(sizeof(*kv)); \
POSTGIS_DEBUGF(4, "MVT_PARSE_VALUE new hash key: %d", ctx->values_hash_i); \
kv->id = ctx->values_hash_i++; \
vector_tile__tile__value__init(kv->value); \
kv->value->pfvaluefield = newvalue; \
kv->value->test_oneof_case = pftype; \
HASH_ADD_KEYPTR_BYHASHVALUE(hh, ctx->hash, &kv->value->pfvaluefield, size, hashv, kv); \
} \
feature_add_property(feature, k, kv->id); \
} \
}
VectorTile__Tile__Value value[1]
Definition mvt.c:70
UT_hash_handle hh
Definition mvt.c:72
uint32_t id
Definition mvt.c:71

Definition at line 449 of file mvt.c.

450 { \
451 POSTGIS_DEBUG(2, "MVT_PARSE_VALUE called"); \
452 { \
453 struct mvt_kv_value *kv; \
454 unsigned hashv; \
455 HASH_VALUE(&newvalue, size, hashv); \
456 HASH_FIND_BYHASHVALUE(hh, ctx->hash, &newvalue, size, hashv, kv); \
457 if (!kv) \
458 { \
459 POSTGIS_DEBUG(4, "MVT_PARSE_VALUE value not found"); \
460 kv = palloc(sizeof(*kv)); \
461 POSTGIS_DEBUGF(4, "MVT_PARSE_VALUE new hash key: %d", ctx->values_hash_i); \
462 kv->id = ctx->values_hash_i++; \
463 vector_tile__tile__value__init(kv->value); \
464 kv->value->pfvaluefield = newvalue; \
465 kv->value->test_oneof_case = pftype; \
466 HASH_ADD_KEYPTR_BYHASHVALUE(hh, ctx->hash, &kv->value->pfvaluefield, size, hashv, kv); \
467 } \
468 feature_add_property(feature, k, kv->id); \
469 } \
470 }