diff options
Diffstat (limited to 'include/proj/coordinateoperation.hpp')
| -rw-r--r-- | include/proj/coordinateoperation.hpp | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/include/proj/coordinateoperation.hpp b/include/proj/coordinateoperation.hpp index 7ade26f2..2f6095f7 100644 --- a/include/proj/coordinateoperation.hpp +++ b/include/proj/coordinateoperation.hpp @@ -116,7 +116,8 @@ using CoordinateOperationNNPtr = util::nn<CoordinateOperationPtr>; * \remark Implements CoordinateOperation from \ref ISO_19111_2019 */ class PROJ_GCC_DLL CoordinateOperation : public common::ObjectUsage, - public io::IPROJStringExportable { + public io::IPROJStringExportable, + public io::IJSONExportable { public: //! @cond Doxygen_Suppress PROJ_DLL ~CoordinateOperation() override; @@ -291,6 +292,7 @@ struct MethodMapping; */ class PROJ_GCC_DLL GeneralParameterValue : public util::BaseObject, public io::IWKTExportable, + public io::IJSONExportable, public util::IComparable { public: //! @cond Doxygen_Suppress @@ -299,6 +301,9 @@ class PROJ_GCC_DLL GeneralParameterValue : public util::BaseObject, PROJ_INTERNAL void _exportToWKT(io::WKTFormatter *formatter) const override = 0; // throw(io::FormattingException) + PROJ_INTERNAL void _exportToJSON(io::JSONFormatter *formatter) + const override = 0; // throw(FormattingException) + PROJ_INTERNAL bool _isEquivalentTo( const util::IComparable *other, util::IComparable::Criterion criterion = @@ -442,6 +447,9 @@ class PROJ_GCC_DLL OperationParameterValue final PROJ_INTERNAL void _exportToWKT(io::WKTFormatter *formatter) const override; // throw(io::FormattingException) + PROJ_INTERNAL void _exportToJSON(io::JSONFormatter *formatter) + const override; // throw(FormattingException) + PROJ_INTERNAL bool _isEquivalentTo(const util::IComparable *other, util::IComparable::Criterion criterion = @@ -481,7 +489,8 @@ using OperationMethodNNPtr = util::nn<OperationMethodPtr>; * * \remark Implements OperationMethod from \ref ISO_19111_2019 */ -class PROJ_GCC_DLL OperationMethod : public common::IdentifiedObject { +class PROJ_GCC_DLL OperationMethod : public common::IdentifiedObject, + public io::IJSONExportable { public: //! @cond Doxygen_Suppress PROJ_DLL ~OperationMethod() override; @@ -507,6 +516,9 @@ class PROJ_GCC_DLL OperationMethod : public common::IdentifiedObject { PROJ_INTERNAL void _exportToWKT(io::WKTFormatter *formatter) const override; // throw(io::FormattingException) + PROJ_INTERNAL void _exportToJSON(io::JSONFormatter *formatter) + const override; // throw(FormattingException) + PROJ_INTERNAL bool _isEquivalentTo(const util::IComparable *other, util::IComparable::Criterion criterion = @@ -1315,6 +1327,9 @@ class PROJ_GCC_DLL Conversion : public SingleOperation { _exportToPROJString(io::PROJStringFormatter *formatter) const override; // throw(FormattingException) + PROJ_INTERNAL void _exportToJSON(io::JSONFormatter *formatter) + const override; // throw(FormattingException) + PROJ_INTERNAL const char *getESRIMethodName() const; PROJ_INTERNAL const char *getWKT1GDALMethodName() const; @@ -1535,6 +1550,9 @@ class PROJ_GCC_DLL Transformation : public SingleOperation { PROJ_INTERNAL void _exportToWKT(io::WKTFormatter *formatter) const override; // throw(io::FormattingException) + PROJ_INTERNAL void _exportToJSON(io::JSONFormatter *formatter) + const override; // throw(FormattingException) + PROJ_INTERNAL TransformationNNPtr shallowClone() const; //! @endcond @@ -1640,6 +1658,9 @@ class PROJ_GCC_DLL ConcatenatedOperation final : public CoordinateOperation { util::IComparable::Criterion criterion = util::IComparable::Criterion::STRICT) const override; + PROJ_INTERNAL void _exportToJSON(io::JSONFormatter *formatter) + const override; // throw(FormattingException) + PROJ_INTERNAL static void fixStepsDirection(const crs::CRSNNPtr &concatOpSourceCRS, const crs::CRSNNPtr &concatOpTargetCRS, |
