6 #ifndef __VISUALIZE_GET_FEATURE_INFO_H__
7 #define __VISUALIZE_GET_FEATURE_INFO_H__
18 struct VisualizeGetFeatureInfoRequest
26 VisualizeGetFeatureInfoRequest() :
27 tableNames(std::vector<std::string>()),
28 xColumnNames(std::vector<std::string>()),
29 yColumnNames(std::vector<std::string>()),
30 geometryColumnNames(std::vector<std::string>()),
31 queryColumnNames(std::vector<std::vector<std::string> >()),
32 projection(std::string()),
43 encoding(std::string()),
44 options(std::map<std::string, std::string>())
101 VisualizeGetFeatureInfoRequest(
const std::vector<std::string>& tableNames_,
const std::vector<std::string>& xColumnNames_,
const std::vector<std::string>& yColumnNames_,
const std::vector<std::string>& geometryColumnNames_,
const std::vector<std::vector<std::string> >& queryColumnNames_,
const std::string& projection_,
const double minX_,
const double maxX_,
const double minY_,
const double maxY_,
const int32_t width_,
const int32_t height_,
const int32_t x_,
const int32_t y_,
const int32_t radius_,
const int64_t limit_,
const std::string& encoding_,
const std::map<std::string, std::string>& options_):
102 tableNames( tableNames_ ),
103 xColumnNames( xColumnNames_ ),
104 yColumnNames( yColumnNames_ ),
105 geometryColumnNames( geometryColumnNames_ ),
106 queryColumnNames( queryColumnNames_ ),
107 projection( projection_ ),
118 encoding( encoding_ ),
123 std::vector<std::string> tableNames;
124 std::vector<std::string> xColumnNames;
125 std::vector<std::string> yColumnNames;
126 std::vector<std::string> geometryColumnNames;
127 std::vector<std::vector<std::string> > queryColumnNames;
128 std::string projection;
139 std::string encoding;
140 std::map<std::string, std::string> options;
150 template<>
struct codec_traits<gpudb::VisualizeGetFeatureInfoRequest>
152 static void encode(Encoder& e,
const gpudb::VisualizeGetFeatureInfoRequest& v)
154 ::avro::encode(e, v.tableNames);
155 ::avro::encode(e, v.xColumnNames);
156 ::avro::encode(e, v.yColumnNames);
157 ::avro::encode(e, v.geometryColumnNames);
158 ::avro::encode(e, v.queryColumnNames);
159 ::avro::encode(e, v.projection);
160 ::avro::encode(e, v.minX);
161 ::avro::encode(e, v.maxX);
162 ::avro::encode(e, v.minY);
163 ::avro::encode(e, v.maxY);
164 ::avro::encode(e, v.width);
165 ::avro::encode(e, v.height);
166 ::avro::encode(e, v.x);
167 ::avro::encode(e, v.y);
168 ::avro::encode(e, v.radius);
169 ::avro::encode(e, v.limit);
170 ::avro::encode(e, v.encoding);
171 ::avro::encode(e, v.options);
174 static void decode(Decoder& d, gpudb::VisualizeGetFeatureInfoRequest& v)
176 if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
178 const std::vector<size_t> fo = rd->fieldOrder();
180 for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
185 ::avro::decode(d, v.tableNames);
189 ::avro::decode(d, v.xColumnNames);
193 ::avro::decode(d, v.yColumnNames);
197 ::avro::decode(d, v.geometryColumnNames);
201 ::avro::decode(d, v.queryColumnNames);
205 ::avro::decode(d, v.projection);
209 ::avro::decode(d, v.minX);
213 ::avro::decode(d, v.maxX);
217 ::avro::decode(d, v.minY);
221 ::avro::decode(d, v.maxY);
225 ::avro::decode(d, v.width);
229 ::avro::decode(d, v.height);
233 ::avro::decode(d, v.x);
237 ::avro::decode(d, v.y);
241 ::avro::decode(d, v.radius);
245 ::avro::decode(d, v.limit);
249 ::avro::decode(d, v.encoding);
253 ::avro::decode(d, v.options);
263 ::avro::decode(d, v.tableNames);
264 ::avro::decode(d, v.xColumnNames);
265 ::avro::decode(d, v.yColumnNames);
266 ::avro::decode(d, v.geometryColumnNames);
267 ::avro::decode(d, v.queryColumnNames);
268 ::avro::decode(d, v.projection);
269 ::avro::decode(d, v.minX);
270 ::avro::decode(d, v.maxX);
271 ::avro::decode(d, v.minY);
272 ::avro::decode(d, v.maxY);
273 ::avro::decode(d, v.width);
274 ::avro::decode(d, v.height);
275 ::avro::decode(d, v.x);
276 ::avro::decode(d, v.y);
277 ::avro::decode(d, v.radius);
278 ::avro::decode(d, v.limit);
279 ::avro::decode(d, v.encoding);
280 ::avro::decode(d, v.options);
295 struct VisualizeGetFeatureInfoResponse
303 VisualizeGetFeatureInfoResponse() :
304 tableNames(std::vector<std::string>()),
305 typeSchemas(std::vector<std::string>()),
306 recordsBinary(std::vector<std::vector<uint8_t> >()),
307 recordsJson(std::vector<std::string>()),
308 geojsonEncodedResponse(std::string()),
309 textEncodedResponse(std::string()),
310 info(std::map<std::string, std::string>())
314 std::vector<std::string> tableNames;
315 std::vector<std::string> typeSchemas;
316 std::vector<std::vector<uint8_t> > recordsBinary;
317 std::vector<std::string> recordsJson;
318 std::string geojsonEncodedResponse;
319 std::string textEncodedResponse;
320 std::map<std::string, std::string> info;
330 template<>
struct codec_traits<gpudb::VisualizeGetFeatureInfoResponse>
332 static void encode(Encoder& e,
const gpudb::VisualizeGetFeatureInfoResponse& v)
334 ::avro::encode(e, v.tableNames);
335 ::avro::encode(e, v.typeSchemas);
336 ::avro::encode(e, v.recordsBinary);
337 ::avro::encode(e, v.recordsJson);
338 ::avro::encode(e, v.geojsonEncodedResponse);
339 ::avro::encode(e, v.textEncodedResponse);
340 ::avro::encode(e, v.info);
343 static void decode(Decoder& d, gpudb::VisualizeGetFeatureInfoResponse& v)
345 if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
347 const std::vector<size_t> fo = rd->fieldOrder();
349 for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
354 ::avro::decode(d, v.tableNames);
358 ::avro::decode(d, v.typeSchemas);
362 ::avro::decode(d, v.recordsBinary);
366 ::avro::decode(d, v.recordsJson);
370 ::avro::decode(d, v.geojsonEncodedResponse);
374 ::avro::decode(d, v.textEncodedResponse);
378 ::avro::decode(d, v.info);
388 ::avro::decode(d, v.tableNames);
389 ::avro::decode(d, v.typeSchemas);
390 ::avro::decode(d, v.recordsBinary);
391 ::avro::decode(d, v.recordsJson);
392 ::avro::decode(d, v.geojsonEncodedResponse);
393 ::avro::decode(d, v.textEncodedResponse);
394 ::avro::decode(d, v.info);