6 #ifndef __VISUALIZE_IMAGE_CLASSBREAK_H__
7 #define __VISUALIZE_IMAGE_CLASSBREAK_H__
22 struct VisualizeImageClassbreakRequest
30 VisualizeImageClassbreakRequest() :
31 tableNames(std::vector<std::string>()),
32 worldTableNames(std::vector<std::string>()),
33 xColumnName(std::string()),
34 yColumnName(std::string()),
35 trackIds(std::vector<std::vector<std::string> >()),
36 cbColumnName1(std::string()),
37 cbVals1(std::vector<std::string>()),
38 cbColumnName2(std::vector<std::string>()),
39 cbVals2(std::vector<std::vector<std::string> >()),
46 projection(std::string()),
48 styleOptions(std::map<std::string, std::vector<std::string> >()),
49 options(std::map<std::string, std::string>())
215 VisualizeImageClassbreakRequest(
const std::vector<std::string>& tableNames_,
const std::vector<std::string>& worldTableNames_,
const std::string& xColumnName_,
const std::string& yColumnName_,
const std::vector<std::vector<std::string> >& trackIds_,
const std::string& cbColumnName1_,
const std::vector<std::string>& cbVals1_,
const std::vector<std::string>& cbColumnName2_,
const std::vector<std::vector<std::string> >& cbVals2_,
const double minX_,
const double maxX_,
const double minY_,
const double maxY_,
const int32_t width_,
const int32_t height_,
const std::string& projection_,
const int64_t bgColor_,
const std::map<std::string, std::vector<std::string> >& styleOptions_,
const std::map<std::string, std::string>& options_):
216 tableNames( tableNames_ ),
217 worldTableNames( worldTableNames_ ),
218 xColumnName( xColumnName_ ),
219 yColumnName( yColumnName_ ),
220 trackIds( trackIds_ ),
221 cbColumnName1( cbColumnName1_ ),
223 cbColumnName2( cbColumnName2_ ),
231 projection( projection_ ),
233 styleOptions( styleOptions_ ),
242 std::vector<std::string> tableNames;
243 std::vector<std::string> worldTableNames;
244 std::string xColumnName;
245 std::string yColumnName;
246 std::vector<std::vector<std::string> > trackIds;
247 std::string cbColumnName1;
248 std::vector<std::string> cbVals1;
249 std::vector<std::string> cbColumnName2;
250 std::vector<std::vector<std::string> > cbVals2;
257 std::string projection;
259 std::map<std::string, std::vector<std::string> > styleOptions;
260 std::map<std::string, std::string> options;
270 template<>
struct codec_traits<gpudb::VisualizeImageClassbreakRequest>
272 static void encode(Encoder& e,
const gpudb::VisualizeImageClassbreakRequest& v)
274 ::avro::encode(e, v.tableNames);
275 ::avro::encode(e, v.worldTableNames);
276 ::avro::encode(e, v.xColumnName);
277 ::avro::encode(e, v.yColumnName);
278 ::avro::encode(e, v.trackIds);
279 ::avro::encode(e, v.cbColumnName1);
280 ::avro::encode(e, v.cbVals1);
281 ::avro::encode(e, v.cbColumnName2);
282 ::avro::encode(e, v.cbVals2);
283 ::avro::encode(e, v.minX);
284 ::avro::encode(e, v.maxX);
285 ::avro::encode(e, v.minY);
286 ::avro::encode(e, v.maxY);
287 ::avro::encode(e, v.width);
288 ::avro::encode(e, v.height);
289 ::avro::encode(e, v.projection);
290 ::avro::encode(e, v.bgColor);
291 ::avro::encode(e, v.styleOptions);
292 ::avro::encode(e, v.options);
295 static void decode(Decoder& d, gpudb::VisualizeImageClassbreakRequest& v)
297 if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
299 const std::vector<size_t> fo = rd->fieldOrder();
301 for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
306 ::avro::decode(d, v.tableNames);
310 ::avro::decode(d, v.worldTableNames);
314 ::avro::decode(d, v.xColumnName);
318 ::avro::decode(d, v.yColumnName);
322 ::avro::decode(d, v.trackIds);
326 ::avro::decode(d, v.cbColumnName1);
330 ::avro::decode(d, v.cbVals1);
334 ::avro::decode(d, v.cbColumnName2);
338 ::avro::decode(d, v.cbVals2);
342 ::avro::decode(d, v.minX);
346 ::avro::decode(d, v.maxX);
350 ::avro::decode(d, v.minY);
354 ::avro::decode(d, v.maxY);
358 ::avro::decode(d, v.width);
362 ::avro::decode(d, v.height);
366 ::avro::decode(d, v.projection);
370 ::avro::decode(d, v.bgColor);
374 ::avro::decode(d, v.styleOptions);
378 ::avro::decode(d, v.options);
388 ::avro::decode(d, v.tableNames);
389 ::avro::decode(d, v.worldTableNames);
390 ::avro::decode(d, v.xColumnName);
391 ::avro::decode(d, v.yColumnName);
392 ::avro::decode(d, v.trackIds);
393 ::avro::decode(d, v.cbColumnName1);
394 ::avro::decode(d, v.cbVals1);
395 ::avro::decode(d, v.cbColumnName2);
396 ::avro::decode(d, v.cbVals2);
397 ::avro::decode(d, v.minX);
398 ::avro::decode(d, v.maxX);
399 ::avro::decode(d, v.minY);
400 ::avro::decode(d, v.maxY);
401 ::avro::decode(d, v.width);
402 ::avro::decode(d, v.height);
403 ::avro::decode(d, v.projection);
404 ::avro::decode(d, v.bgColor);
405 ::avro::decode(d, v.styleOptions);
406 ::avro::decode(d, v.options);
425 struct VisualizeImageClassbreakResponse
433 VisualizeImageClassbreakResponse() :
437 imageData(std::vector<uint8_t>())
448 std::vector<uint8_t> imageData;
458 template<>
struct codec_traits<gpudb::VisualizeImageClassbreakResponse>
460 static void encode(Encoder& e,
const gpudb::VisualizeImageClassbreakResponse& v)
462 ::avro::encode(e, v.width);
463 ::avro::encode(e, v.height);
464 ::avro::encode(e, v.bgColor);
465 ::avro::encode(e, v.imageData);
468 static void decode(Decoder& d, gpudb::VisualizeImageClassbreakResponse& v)
470 if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
472 const std::vector<size_t> fo = rd->fieldOrder();
474 for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
479 ::avro::decode(d, v.width);
483 ::avro::decode(d, v.height);
487 ::avro::decode(d, v.bgColor);
491 ::avro::decode(d, v.imageData);
501 ::avro::decode(d, v.width);
502 ::avro::decode(d, v.height);
503 ::avro::decode(d, v.bgColor);
504 ::avro::decode(d, v.imageData);