diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2018-12-07 19:53:48 +0100 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2018-12-07 19:53:48 +0100 |
| commit | 23127c01ad535902665a975da81e27c389bb7aeb (patch) | |
| tree | d6cc90dfe1069425824de40fbe42342a1afca9bd /include | |
| parent | 706fac8bc70312f5729e2f3aeeb4f67ecb211b1d (diff) | |
| parent | 29b522b4b80b43fe03cb1a955789676eec8051e7 (diff) | |
| download | PROJ-23127c01ad535902665a975da81e27c389bb7aeb.tar.gz PROJ-23127c01ad535902665a975da81e27c389bb7aeb.zip | |
Merge remote-tracking branch 'rouault/gdalbarn'
Diffstat (limited to 'include')
| -rw-r--r-- | include/proj/common.hpp | 12 | ||||
| -rw-r--r-- | include/proj/crs.hpp | 8 | ||||
| -rw-r--r-- | include/proj/io.hpp | 12 | ||||
| -rw-r--r-- | include/proj/metadata.hpp | 4 | ||||
| -rw-r--r-- | include/proj/util.hpp | 9 |
5 files changed, 31 insertions, 14 deletions
diff --git a/include/proj/common.hpp b/include/proj/common.hpp index f1e683e7..91756c62 100644 --- a/include/proj/common.hpp +++ b/include/proj/common.hpp @@ -277,9 +277,9 @@ using IdentifiedObjectNNPtr = util::nn<IdentifiedObjectPtr>; * * \remark Implements IdentifiedObject from \ref ISO_19111_2018 */ -class IdentifiedObject : public util::BaseObject, - public util::IComparable, - public io::IWKTExportable { +class PROJ_GCC_DLL IdentifiedObject : public util::BaseObject, + public util::IComparable, + public io::IWKTExportable { public: //! @cond Doxygen_Suppress PROJ_DLL ~IdentifiedObject() override; @@ -311,14 +311,14 @@ class IdentifiedObject : public util::BaseObject, //! @cond Doxygen_Suppress void formatID(io::WKTFormatter *formatter) const; - void formatRemarks(io::WKTFormatter *formatter) const; + PROJ_INTERNAL void formatRemarks(io::WKTFormatter *formatter) const; - bool + PROJ_INTERNAL bool _isEquivalentTo(const util::IComparable *other, util::IComparable::Criterion criterion = util::IComparable::Criterion::STRICT) const override; - bool + PROJ_INTERNAL bool _isEquivalentTo(const IdentifiedObject *other, util::IComparable::Criterion criterion = util::IComparable::Criterion::STRICT) PROJ_CONST_DECL; diff --git a/include/proj/crs.hpp b/include/proj/crs.hpp index bdb36cd4..1066f886 100644 --- a/include/proj/crs.hpp +++ b/include/proj/crs.hpp @@ -92,8 +92,9 @@ class PROJ_GCC_DLL CRS : public common::ObjectUsage { PROJ_DLL GeodeticCRSPtr extractGeodeticCRS() const; PROJ_DLL GeographicCRSPtr extractGeographicCRS() const; PROJ_DLL VerticalCRSPtr extractVerticalCRS() const; - PROJ_DLL CRSNNPtr createBoundCRSToWGS84IfPossible( - const io::DatabaseContextPtr &dbContext) const; + PROJ_DLL CRSNNPtr + createBoundCRSToWGS84IfPossible(const io::DatabaseContextPtr &dbContext, + bool allowIntermediateCRS) const; PROJ_DLL CRSNNPtr stripVerticalComponent() const; PROJ_DLL const BoundCRSPtr &canonicalBoundCRS() PROJ_CONST_DECL; @@ -101,6 +102,9 @@ class PROJ_GCC_DLL CRS : public common::ObjectUsage { PROJ_DLL std::list<std::pair<CRSNNPtr, int>> identify(const io::AuthorityFactoryPtr &authorityFactory) const; + PROJ_DLL std::list<CRSNNPtr> + getNonDeprecated(const io::DatabaseContextNNPtr &dbContext) const; + PROJ_PRIVATE : //! @cond Doxygen_Suppress PROJ_INTERNAL const GeodeticCRS * diff --git a/include/proj/io.hpp b/include/proj/io.hpp index 26420150..c0d4fef5 100644 --- a/include/proj/io.hpp +++ b/include/proj/io.hpp @@ -731,6 +731,15 @@ class PROJ_GCC_DLL DatabaseContext { PROJ_INTERNAL std::string getTextDefinition(const std::string &tableName, const std::string &authName, const std::string &code) const; + + PROJ_INTERNAL std::vector<std::string> + getAllowedAuthorities(const std::string &sourceAuthName, + const std::string &targetAuthName) const; + + PROJ_INTERNAL std::list<std::pair<std::string, std::string>> + getNonDeprecated(const std::string &tableName, const std::string &authName, + const std::string &code) const; + //! @endcond protected: @@ -952,7 +961,8 @@ class PROJ_GCC_DLL AuthorityFactory { PROJ_INTERNAL operation::CoordinateOperationNNPtr createCoordinateOperation(const std::string &code, bool allowConcatenated, - bool usePROJAlternativeGridNames) const; + bool usePROJAlternativeGridNames, + const std::string &type) const; INLINED_MAKE_SHARED diff --git a/include/proj/metadata.hpp b/include/proj/metadata.hpp index fc86693d..d1b91515 100644 --- a/include/proj/metadata.hpp +++ b/include/proj/metadata.hpp @@ -406,6 +406,7 @@ class PROJ_GCC_DLL Identifier : public util::BaseObject, protected: PROJ_INTERNAL explicit Identifier(const std::string &codeIn, const util::PropertyMap &properties); + PROJ_INTERNAL explicit Identifier(); PROJ_FRIEND_OPTIONAL(Identifier); INLINED_MAKE_SHARED @@ -413,6 +414,9 @@ class PROJ_GCC_DLL Identifier : public util::BaseObject, PROJ_FRIEND(common::IdentifiedObject); + PROJ_INTERNAL static IdentifierNNPtr + createFromDescription(const std::string &descriptionIn); + private: PROJ_OPAQUE_PRIVATE_DATA }; diff --git a/include/proj/util.hpp b/include/proj/util.hpp index eb7288b2..c2f2b7fe 100644 --- a/include/proj/util.hpp +++ b/include/proj/util.hpp @@ -499,12 +499,13 @@ class PropertyMap { PROJ_PRIVATE : //! @cond Doxygen_Suppress - std::map<std::string, BaseObjectNNPtr>::iterator - find(const std::string &key) const; - std::map<std::string, BaseObjectNNPtr>::iterator end() const; + const BaseObjectNNPtr * + get(const std::string &key) const; // throw(InvalidValueTypeException) bool getStringValue(const std::string &key, std::string &outVal) const; + bool getStringValue(const std::string &key, + optional<std::string> &outVal) const; static PropertyMap createAndSetName(const char *name); static PropertyMap createAndSetName(const std::string &name); @@ -513,8 +514,6 @@ class PropertyMap { private: PropertyMap &operator=(const PropertyMap &) = delete; - PropertyMap &set(const std::string &key, const BoxedValue &val); - PROJ_OPAQUE_PRIVATE_DATA }; |
