6 #ifndef __VISUALIZE_VIDEO_H__ 7 #define __VISUALIZE_VIDEO_H__ 22 struct VisualizeVideoRequest
30 VisualizeVideoRequest() :
31 tableNames(std::vector<std::string>()),
32 worldTableNames(std::vector<std::string>()),
33 trackIds(std::vector<std::vector<std::string> >()),
34 xColumnName(std::string()),
35 yColumnName(std::string()),
36 geometryColumnName(std::string()),
43 projection(std::string()),
45 timeIntervals(std::vector<std::vector<double> >()),
46 videoStyle(std::string()),
47 sessionKey(std::string()),
48 styleOptions(std::map<std::string, std::vector<std::string> >()),
49 options(std::map<std::string, std::string>())
201 VisualizeVideoRequest(
const std::vector<std::string>& tableNames_,
const std::vector<std::string>& worldTableNames_,
const std::vector<std::vector<std::string> >& trackIds_,
const std::string& xColumnName_,
const std::string& yColumnName_,
const std::string& geometryColumnName_,
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::vector<std::vector<double> >& timeIntervals_,
const std::string& videoStyle_,
const std::string& sessionKey_,
const std::map<std::string, std::vector<std::string> >& styleOptions_,
const std::map<std::string, std::string>& options_):
202 tableNames( tableNames_ ),
203 worldTableNames( worldTableNames_ ),
204 trackIds( trackIds_ ),
205 xColumnName( xColumnName_ ),
206 yColumnName( yColumnName_ ),
207 geometryColumnName( geometryColumnName_ ),
214 projection( projection_ ),
216 timeIntervals( timeIntervals_ ),
217 videoStyle( videoStyle_ ),
218 sessionKey( sessionKey_ ),
219 styleOptions( styleOptions_ ),
228 std::vector<std::string> tableNames;
229 std::vector<std::string> worldTableNames;
230 std::vector<std::vector<std::string> > trackIds;
231 std::string xColumnName;
232 std::string yColumnName;
233 std::string geometryColumnName;
240 std::string projection;
242 std::vector<std::vector<double> > timeIntervals;
243 std::string videoStyle;
244 std::string sessionKey;
245 std::map<std::string, std::vector<std::string> > styleOptions;
246 std::map<std::string, std::string> options;
256 template<>
struct codec_traits<
gpudb::VisualizeVideoRequest>
258 static void encode(Encoder& e,
const gpudb::VisualizeVideoRequest& v)
260 ::avro::encode(e, v.tableNames);
261 ::avro::encode(e, v.worldTableNames);
262 ::avro::encode(e, v.trackIds);
263 ::avro::encode(e, v.xColumnName);
264 ::avro::encode(e, v.yColumnName);
265 ::avro::encode(e, v.geometryColumnName);
266 ::avro::encode(e, v.minX);
267 ::avro::encode(e, v.maxX);
268 ::avro::encode(e, v.minY);
269 ::avro::encode(e, v.maxY);
270 ::avro::encode(e, v.width);
271 ::avro::encode(e, v.height);
272 ::avro::encode(e, v.projection);
273 ::avro::encode(e, v.bgColor);
274 ::avro::encode(e, v.timeIntervals);
275 ::avro::encode(e, v.videoStyle);
276 ::avro::encode(e, v.sessionKey);
277 ::avro::encode(e, v.styleOptions);
278 ::avro::encode(e, v.options);
281 static void decode(Decoder& d, gpudb::VisualizeVideoRequest& v)
283 if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
285 const std::vector<size_t> fo = rd->fieldOrder();
287 for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
292 ::avro::decode(d, v.tableNames);
296 ::avro::decode(d, v.worldTableNames);
300 ::avro::decode(d, v.trackIds);
304 ::avro::decode(d, v.xColumnName);
308 ::avro::decode(d, v.yColumnName);
312 ::avro::decode(d, v.geometryColumnName);
316 ::avro::decode(d, v.minX);
320 ::avro::decode(d, v.maxX);
324 ::avro::decode(d, v.minY);
328 ::avro::decode(d, v.maxY);
332 ::avro::decode(d, v.width);
336 ::avro::decode(d, v.height);
340 ::avro::decode(d, v.projection);
344 ::avro::decode(d, v.bgColor);
348 ::avro::decode(d, v.timeIntervals);
352 ::avro::decode(d, v.videoStyle);
356 ::avro::decode(d, v.sessionKey);
360 ::avro::decode(d, v.styleOptions);
364 ::avro::decode(d, v.options);
374 ::avro::decode(d, v.tableNames);
375 ::avro::decode(d, v.worldTableNames);
376 ::avro::decode(d, v.trackIds);
377 ::avro::decode(d, v.xColumnName);
378 ::avro::decode(d, v.yColumnName);
379 ::avro::decode(d, v.geometryColumnName);
380 ::avro::decode(d, v.minX);
381 ::avro::decode(d, v.maxX);
382 ::avro::decode(d, v.minY);
383 ::avro::decode(d, v.maxY);
384 ::avro::decode(d, v.width);
385 ::avro::decode(d, v.height);
386 ::avro::decode(d, v.projection);
387 ::avro::decode(d, v.bgColor);
388 ::avro::decode(d, v.timeIntervals);
389 ::avro::decode(d, v.videoStyle);
390 ::avro::decode(d, v.sessionKey);
391 ::avro::decode(d, v.styleOptions);
392 ::avro::decode(d, v.options);
411 struct VisualizeVideoResponse
419 VisualizeVideoResponse() :
423 numFrames(int32_t()),
424 sessionKey(std::string()),
425 data(std::vector<std::vector<uint8_t> >())
437 std::string sessionKey;
438 std::vector<std::vector<uint8_t> > data;
448 template<>
struct codec_traits<
gpudb::VisualizeVideoResponse>
450 static void encode(Encoder& e,
const gpudb::VisualizeVideoResponse& v)
452 ::avro::encode(e, v.width);
453 ::avro::encode(e, v.height);
454 ::avro::encode(e, v.bgColor);
455 ::avro::encode(e, v.numFrames);
456 ::avro::encode(e, v.sessionKey);
457 ::avro::encode(e, v.data);
460 static void decode(Decoder& d, gpudb::VisualizeVideoResponse& v)
462 if (::avro::ResolvingDecoder *rd = dynamic_cast< ::avro::ResolvingDecoder*>(&d))
464 const std::vector<size_t> fo = rd->fieldOrder();
466 for (std::vector<size_t>::const_iterator it = fo.begin(); it != fo.end(); ++it)
471 ::avro::decode(d, v.width);
475 ::avro::decode(d, v.height);
479 ::avro::decode(d, v.bgColor);
483 ::avro::decode(d, v.numFrames);
487 ::avro::decode(d, v.sessionKey);
491 ::avro::decode(d, v.data);
501 ::avro::decode(d, v.width);
502 ::avro::decode(d, v.height);
503 ::avro::decode(d, v.bgColor);
504 ::avro::decode(d, v.numFrames);
505 ::avro::decode(d, v.sessionKey);
506 ::avro::decode(d, v.data);