diff options
Diffstat (limited to 'src/iso19111/coordinatesystem.cpp')
| -rw-r--r-- | src/iso19111/coordinatesystem.cpp | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/src/iso19111/coordinatesystem.cpp b/src/iso19111/coordinatesystem.cpp index fc4b7492..2bfe30e6 100644 --- a/src/iso19111/coordinatesystem.cpp +++ b/src/iso19111/coordinatesystem.cpp @@ -40,6 +40,8 @@ #include "proj/internal/internal.hpp" #include "proj/internal/io_internal.hpp" +#include "proj_json_streaming_writer.hpp" + #include <map> #include <memory> #include <set> @@ -396,26 +398,26 @@ void CoordinateSystemAxis::_exportToWKT(io::WKTFormatter *formatter, int order, void CoordinateSystemAxis::_exportToJSON( io::JSONFormatter *formatter) const // throw(FormattingException) { - auto &writer = formatter->writer(); + auto writer = formatter->writer(); auto objectContext( formatter->MakeObjectContext("Axis", !identifiers().empty())); - writer.AddObjKey("name"); - writer.Add(nameStr()); + writer->AddObjKey("name"); + writer->Add(nameStr()); - writer.AddObjKey("abbreviation"); - writer.Add(abbreviation()); + writer->AddObjKey("abbreviation"); + writer->Add(abbreviation()); - writer.AddObjKey("direction"); - writer.Add(direction().toString()); + writer->AddObjKey("direction"); + writer->Add(direction().toString()); const auto &l_unit(unit()); if (l_unit == common::UnitOfMeasure::METRE || l_unit == common::UnitOfMeasure::DEGREE) { - writer.AddObjKey("unit"); - writer.Add(l_unit.name()); + writer->AddObjKey("unit"); + writer->Add(l_unit.name()); } else if (l_unit.type() != common::UnitOfMeasure::Type::NONE) { - writer.AddObjKey("unit"); + writer->AddObjKey("unit"); l_unit._exportToJSON(formatter); } @@ -573,16 +575,16 @@ void CoordinateSystem::_exportToWKT( void CoordinateSystem::_exportToJSON( io::JSONFormatter *formatter) const // throw(FormattingException) { - auto &writer = formatter->writer(); + auto writer = formatter->writer(); auto objectContext(formatter->MakeObjectContext("CoordinateSystem", !identifiers().empty())); - writer.AddObjKey("subtype"); - writer.Add(getWKT2Type(true)); + writer->AddObjKey("subtype"); + writer->Add(getWKT2Type(true)); - writer.AddObjKey("axis"); + writer->AddObjKey("axis"); { - auto axisContext(writer.MakeArrayContext(false)); + auto axisContext(writer->MakeArrayContext(false)); const auto &l_axisList = axisList(); for (auto &axis : l_axisList) { formatter->setOmitTypeInImmediateChild(); |
