// Copyright 2016, University of Freiburg, // Chair of Algorithms and Data Structures. // Authors: Patrick Brosi #ifndef UTIL_GEO_OUTPUT_GEOJSONOUTPUT_H_ #define UTIL_GEO_OUTPUT_GEOJSONOUTPUT_H_ #include #include #include #include "util/String.h" #include "util/geo/Geo.h" #include "util/json/Writer.h" namespace util { namespace geo { namespace output { class GeoJsonOutput { public: GeoJsonOutput(std::ostream& str); GeoJsonOutput(std::ostream& str, json::Val attrs); ~GeoJsonOutput(); template void print(const Point& p, json::Val attrs); template void print(const Line& l, json::Val attrs); void flush(); private: json::Writer _wr; }; #include "util/geo/output/GeoJsonOutput.tpp" } } } #endif // UTIL_GEO_OUTPUT_GEOJSONOUTPUT_H_