OmniSciDB  04ee39c94c
GeoTargetValueSerializer< kMULTIPOLYGON > Struct Template Reference

#include <ResultSetGeoSerialization.h>

Static Public Member Functions

static TargetValue serialize (const SQLTypeInfo &geo_ti, std::array< VarlenDatumPtr, 3 > &vals)
 

Detailed Description

template<>
struct GeoTargetValueSerializer< kMULTIPOLYGON >

Definition at line 223 of file ResultSetGeoSerialization.h.

Member Function Documentation

◆ serialize()

static TargetValue GeoTargetValueSerializer< kMULTIPOLYGON >::serialize ( const SQLTypeInfo geo_ti,
std::array< VarlenDatumPtr, 3 > &  vals 
)
inlinestatic

Definition at line 224 of file ResultSetGeoSerialization.h.

References anonymous_namespace{ResultSetGeoSerialization.h}::decompress_coords< double >(), and anonymous_namespace{ResultSetGeoSerialization.h}::unpack_geo_vector().

225  {
226  std::vector<int32_t> ring_sizes_vec;
227  unpack_geo_vector(ring_sizes_vec, vals[1]->pointer, vals[1]->length);
228  std::vector<int32_t> poly_rings_vec;
229  unpack_geo_vector(poly_rings_vec, vals[2]->pointer, vals[2]->length);
231  *decompress_coords<double>(geo_ti, vals[0]->pointer, vals[0]->length),
232  ring_sizes_vec,
233  poly_rings_vec);
234  }
void unpack_geo_vector(std::vector< T > &output, const int8_t *input_ptr, const size_t sz)
std::shared_ptr< std::vector< double > > decompress_coords< double >(const SQLTypeInfo &geo_ti, const int8_t *coords, const size_t coords_sz)
+ Here is the call graph for this function:

The documentation for this struct was generated from the following file: