aboutsummaryrefslogtreecommitdiff
path: root/include/proj/coordinateoperation.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/proj/coordinateoperation.hpp')
-rw-r--r--include/proj/coordinateoperation.hpp19
1 files changed, 17 insertions, 2 deletions
diff --git a/include/proj/coordinateoperation.hpp b/include/proj/coordinateoperation.hpp
index 7ade26f2..9b2dfe64 100644
--- a/include/proj/coordinateoperation.hpp
+++ b/include/proj/coordinateoperation.hpp
@@ -291,6 +291,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 +300,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 +446,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 +488,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 +515,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 =
@@ -838,7 +849,8 @@ EPSG:8833
*/
-class PROJ_GCC_DLL Conversion : public SingleOperation {
+class PROJ_GCC_DLL Conversion : public SingleOperation,
+ public io::IJSONExportable {
public:
//! @cond Doxygen_Suppress
PROJ_DLL ~Conversion() override;
@@ -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;