aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-05-19 16:53:27 +0200
committerGitHub <noreply@github.com>2020-05-19 16:53:27 +0200
commit3ee7c9495b7340fbc189f43d9bb4bf5753307991 (patch)
treea9f6c1e3c7a1125dfb69c361f9d52b5504d99433 /include
parent2e5470387df8c713af18e601c0e6a4b352294556 (diff)
parentb0b33b8447972ac6e60d68213d6c24b0a4989421 (diff)
downloadPROJ-3ee7c9495b7340fbc189f43d9bb4bf5753307991.tar.gz
PROJ-3ee7c9495b7340fbc189f43d9bb4bf5753307991.zip
Merge pull request #2234 from rouault/fix_2232
Many fixes regarding BoundCRS, CompoundCRS, Geographic3D CRS with non-metre units
Diffstat (limited to 'include')
-rw-r--r--include/proj/crs.hpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/include/proj/crs.hpp b/include/proj/crs.hpp
index 7aa74c41..bbdc9565 100644
--- a/include/proj/crs.hpp
+++ b/include/proj/crs.hpp
@@ -68,6 +68,12 @@ using BoundCRSPtr = std::shared_ptr<BoundCRS>;
/** Non-null shared pointer of BoundCRS */
using BoundCRSNNPtr = util::nn<BoundCRSPtr>;
+class CompoundCRS;
+/** Shared pointer of CompoundCRS */
+using CompoundCRSPtr = std::shared_ptr<CompoundCRS>;
+/** Non-null shared pointer of CompoundCRS */
+using CompoundCRSNNPtr = util::nn<CompoundCRSPtr>;
+
// ---------------------------------------------------------------------------
class CRS;
@@ -141,7 +147,12 @@ class PROJ_GCC_DLL CRS : public common::ObjectUsage,
PROJ_INTERNAL CRSNNPtr allowNonConformantWKT1Export() const;
PROJ_INTERNAL CRSNNPtr
- attachOriginalVertCRS(const VerticalCRSNNPtr &vertCRS) const;
+ attachOriginalCompoundCRS(const CompoundCRSNNPtr &compoundCRS) const;
+
+ PROJ_INTERNAL CRSNNPtr promoteTo3D(
+ const std::string &newName, const io::DatabaseContextPtr &dbContext,
+ const cs::CoordinateSystemAxisNNPtr &verticalAxisIfNotAlreadyPresent)
+ const;
//! @endcond
@@ -855,12 +866,6 @@ class PROJ_GCC_DLL InvalidCompoundCRSException : public util::Exception {
// ---------------------------------------------------------------------------
-class CompoundCRS;
-/** Shared pointer of CompoundCRS */
-using CompoundCRSPtr = std::shared_ptr<CompoundCRS>;
-/** Non-null shared pointer of CompoundCRS */
-using CompoundCRSNNPtr = util::nn<CompoundCRSPtr>;
-
/** \brief A coordinate reference system describing the position of points
* through two or more independent single coordinate reference systems.
*