aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/iso19111/c_api.cpp21
-rw-r--r--src/proj.h4
2 files changed, 25 insertions, 0 deletions
diff --git a/src/iso19111/c_api.cpp b/src/iso19111/c_api.cpp
index 24724c70..9219f767 100644
--- a/src/iso19111/c_api.cpp
+++ b/src/iso19111/c_api.cpp
@@ -915,6 +915,18 @@ convertPJObjectTypeToObjectType(PJ_TYPE type, bool &valid) {
cppType = AuthorityFactory::ObjectType::DATUM;
break;
+ case PJ_TYPE_TEMPORAL_DATUM:
+ valid = false;
+ break;
+
+ case PJ_TYPE_ENGINEERING_DATUM:
+ valid = false;
+ break;
+
+ case PJ_TYPE_PARAMETRIC_DATUM:
+ valid = false;
+ break;
+
case PJ_TYPE_CRS:
cppType = AuthorityFactory::ObjectType::CRS;
break;
@@ -1084,6 +1096,15 @@ PJ_TYPE proj_get_type(const PJ *obj) {
if (dynamic_cast<DatumEnsemble *>(ptr)) {
return PJ_TYPE_DATUM_ENSEMBLE;
}
+ if (dynamic_cast<TemporalDatum *>(ptr)) {
+ return PJ_TYPE_TEMPORAL_DATUM;
+ }
+ if (dynamic_cast<EngineeringDatum *>(ptr)) {
+ return PJ_TYPE_ENGINEERING_DATUM;
+ }
+ if (dynamic_cast<ParametricDatum *>(ptr)) {
+ return PJ_TYPE_PARAMETRIC_DATUM;
+ }
{
auto crs = dynamic_cast<GeographicCRS *>(ptr);
diff --git a/src/proj.h b/src/proj.h
index b60d7f66..550d422d 100644
--- a/src/proj.h
+++ b/src/proj.h
@@ -735,6 +735,10 @@ typedef enum
PJ_TYPE_TRANSFORMATION,
PJ_TYPE_CONCATENATED_OPERATION,
PJ_TYPE_OTHER_COORDINATE_OPERATION,
+
+ PJ_TYPE_TEMPORAL_DATUM,
+ PJ_TYPE_ENGINEERING_DATUM,
+ PJ_TYPE_PARAMETRIC_DATUM,
} PJ_TYPE;
/** Comparison criterion. */