metadata namespace¶
-
namespace
metadata
¶ Common classes from ISO_19115 standard.
osgeo.proj.metadata namespace
Typedefs
-
using
GeographicExtentPtr
= std::shared_ptr<GeographicExtent>¶ Shared pointer of GeographicExtent.
-
using
GeographicExtentNNPtr
= util::nn<GeographicExtentPtr>¶ Non-null shared pointer of GeographicExtent.
-
using
GeographicBoundingBoxPtr
= std::shared_ptr<GeographicBoundingBox>¶ Shared pointer of GeographicBoundingBox.
-
using
GeographicBoundingBoxNNPtr
= util::nn<GeographicBoundingBoxPtr>¶ Non-null shared pointer of GeographicBoundingBox.
-
using
TemporalExtentPtr
= std::shared_ptr<TemporalExtent>¶ Shared pointer of TemporalExtent.
-
using
TemporalExtentNNPtr
= util::nn<TemporalExtentPtr>¶ Non-null shared pointer of TemporalExtent.
-
using
VerticalExtentPtr
= std::shared_ptr<VerticalExtent>¶ Shared pointer of VerticalExtent.
-
using
VerticalExtentNNPtr
= util::nn<VerticalExtentPtr>¶ Non-null shared pointer of VerticalExtent.
-
using
IdentifierPtr
= std::shared_ptr<Identifier>¶ Shared pointer of Identifier.
-
using
IdentifierNNPtr
= util::nn<IdentifierPtr>¶ Non-null shared pointer of Identifier.
-
using
PositionalAccuracyPtr
= std::shared_ptr<PositionalAccuracy>¶ Shared pointer of PositionalAccuracy.
-
using
PositionalAccuracyNNPtr
= util::nn<PositionalAccuracyPtr>¶ Non-null shared pointer of PositionalAccuracy.
-
class
Citation
: public osgeo::proj::util::BaseObject¶ - #include <metadata.hpp>
Standardized resource reference.
Local names are names which are directly accessible to and maintained by a NameSpace within which they are local, indicated by the scope.
-
class
Extent
: public osgeo::proj::util::BaseObject, public osgeo::proj::util::IComparable¶ - #include <metadata.hpp>
Information about spatial, vertical, and temporal extent.
Public Functions
-
const optional<std::string> &
description
()¶ Return a textual description of the extent.
- Return
the description, or empty.
-
const std::vector<GeographicExtentNNPtr> &
geographicElements
()¶ Return the geographic element(s) of the extent
- Return
the geographic element(s), or empty.
-
const std::vector<TemporalExtentNNPtr> &
temporalElements
()¶ Return the temporal element(s) of the extent
- Return
the temporal element(s), or empty.
-
const std::vector<VerticalExtentNNPtr> &
verticalElements
()¶ Return the vertical element(s) of the extent
- Return
the vertical element(s), or empty.
-
bool
contains
(const ExtentNNPtr &other) const¶ Returns whether this extent contains the other one.
Behaviour only well specified if each sub-extent category as at most one element.
-
bool
intersects
(const ExtentNNPtr &other) const¶ Returns whether this extent intersects the other one.
Behaviour only well specified if each sub-extent category as at most one element.
-
ExtentPtr
intersection
(const ExtentNNPtr &other) const¶ Returns the intersection of this extent with another one.
Behaviour only well specified if there is one single GeographicExtent in each object. Returns nullptr otherwise.
Public Static Functions
-
ExtentNNPtr
create
(const util::optional<std::string> &descriptionIn, const std::vector<GeographicExtentNNPtr> &geographicElementsIn, const std::vector<VerticalExtentNNPtr> &verticalElementsIn, const std::vector<TemporalExtentNNPtr> &temporalElementsIn)¶ Instantiate a Extent.
- Return
a new Extent.
- Parameters
descriptionIn
: Textual description, or empty.geographicElementsIn
: Geographic element(s), or empty.verticalElementsIn
: Vertical element(s), or empty.temporalElementsIn
: Temporal element(s), or empty.
-
ExtentNNPtr
createFromBBOX
(double west, double south, double east, double north, const util::optional<std::string> &descriptionIn = util::optional<std::string>())¶ Instantiate a Extent from a bounding box.
- Return
a new Extent.
- Parameters
west
: Western-most coordinate of the limit of the dataset extent (in degrees).south
: Southern-most coordinate of the limit of the dataset extent (in degrees).east
: Eastern-most coordinate of the limit of the dataset extent (in degrees).north
: Northern-most coordinate of the limit of the dataset extent (in degrees).descriptionIn
: Textual description, or empty.
Public Static Attributes
-
const ExtentNNPtr
WORLD
¶ World extent.
-
const optional<std::string> &
-
class
GeographicBoundingBox
: public osgeo::proj::metadata::GeographicExtent¶ - #include <metadata.hpp>
Geographic position of the dataset.
This is only an approximate so specifying the co-ordinate reference system is unnecessary.
- Remark
Implements GeographicBoundingBox from GeoAPI
Public Functions
-
double
westBoundLongitude
()¶ Returns the western-most coordinate of the limit of the dataset extent.
The unit is degrees.
If eastBoundLongitude < westBoundLongitude(), then the bounding box crosses the anti-meridian.
-
double
southBoundLatitude
()¶ Returns the southern-most coordinate of the limit of the dataset extent.
The unit is degrees.
-
double
eastBoundLongitude
()¶ Returns the eastern-most coordinate of the limit of the dataset extent.
The unit is degrees.
If eastBoundLongitude < westBoundLongitude(), then the bounding box crosses the anti-meridian.
-
double
northBoundLatitude
()¶ Returns the northern-most coordinate of the limit of the dataset extent.
The unit is degrees.
-
bool
contains
(const GeographicExtentNNPtr &other) const¶ Returns whether this extent contains the other one.
-
bool
intersects
(const GeographicExtentNNPtr &other) const¶ Returns whether this extent intersects the other one.
-
GeographicExtentPtr
intersection
(const GeographicExtentNNPtr &other) const¶ Returns the intersection of this extent with another one.
Public Static Functions
-
GeographicBoundingBoxNNPtr
create
(double west, double south, double east, double north)¶ Instantiate a GeographicBoundingBox.
If east < west, then the bounding box crosses the anti-meridian.
- Return
a new GeographicBoundingBox.
- Parameters
west
: Western-most coordinate of the limit of the dataset extent (in degrees).south
: Southern-most coordinate of the limit of the dataset extent (in degrees).east
: Eastern-most coordinate of the limit of the dataset extent (in degrees).north
: Northern-most coordinate of the limit of the dataset extent (in degrees).
-
class
GeographicExtent
: public osgeo::proj::util::BaseObject, public osgeo::proj::util::IComparable¶ - #include <metadata.hpp>
Base interface for geographic area of the dataset.
- Remark
Simplified version of GeographicExtent from GeoAPI
Subclassed by osgeo::proj::metadata::GeographicBoundingBox
Public Functions
-
virtual bool
contains
(const GeographicExtentNNPtr &other) const = 0¶ Returns whether this extent contains the other one.
-
virtual bool
intersects
(const GeographicExtentNNPtr &other) const = 0¶ Returns whether this extent intersects the other one.
-
virtual GeographicExtentPtr
intersection
(const GeographicExtentNNPtr &other) const = 0¶ Returns the intersection of this extent with another one.
-
class
Identifier
: public osgeo::proj::util::BaseObject, public osgeo::proj::io::IWKTExportable, public osgeo::proj::io::IJSONExportable¶ - #include <metadata.hpp>
Value uniquely identifying an object within a namespace.
- Remark
Implements Identifier as described in ISO_19111_2019 but which originates from ISO_19115
Public Functions
Return a citation for the organization responsible for definition and maintenance of the code.
- Return
the citation for the authority, or empty.
-
const std::string &
code
()¶ Return the alphanumeric value identifying an instance in the codespace.
e.g. “4326” (for EPSG:4326 WGS 84 GeographicCRS)
- Return
the code.
-
const optional<std::string> &
codeSpace
()¶ Return the organization responsible for definition and maintenance of the code.
e.g “EPSG”
- Return
the authority codespace, or empty.
-
const optional<std::string> &
version
()¶ Return the version identifier for the namespace.
When appropriate, the edition is identified by the effective date, coded using ISO 8601 date format.
- Return
the version or empty.
-
const optional<std::string> &
description
()¶ Return the natural language description of the meaning of the code value.
- Return
the description or empty.
-
const optional<std::string> &
uri
()¶ Return the URI of the identifier.
- Return
the URI or empty.
Public Static Functions
-
IdentifierNNPtr
create
(const std::string &codeIn = std::string(), const util::PropertyMap &properties = util::PropertyMap())¶ Instantiate a Identifier.
- Return
a new Identifier.
- Parameters
codeIn
: Alphanumeric value identifying an instance in the codespaceproperties
: See general_properties. Generally, the Identifier::CODESPACE_KEY should be set.
-
bool
isEquivalentName
(const char *a, const char *b)¶ Returns whether two names are considered equivalent.
Two names are equivalent by removing any space, underscore, dash, slash, { or } character from them, and comparing in a case insensitive way.
Public Static Attributes
-
const std::string
AUTHORITY_KEY
¶ Key to set the authority citation of a metadata::Identifier.
The value is to be provided as a string or a metadata::Citation.
-
const std::string
CODE_KEY
¶ Key to set the code of a metadata::Identifier.
The value is to be provided as a integer or a string.
-
const std::string
CODESPACE_KEY
¶ Key to set the organization responsible for definition and maintenance of the code of a metadata::Identifier.
The value is to be provided as a string.
-
const std::string
VERSION_KEY
¶ Key to set the version identifier for the namespace of a metadata::Identifier.
The value is to be provided as a string.
-
const std::string
DESCRIPTION_KEY
¶ Key to set the natural language description of the meaning of the code value of a metadata::Identifier.
The value is to be provided as a string.
-
const std::string
URI_KEY
¶ Key to set the URI of a metadata::Identifier.
The value is to be provided as a string.
-
const std::string
EPSG
¶ EPSG codespace.
-
const std::string
OGC
¶ OGC codespace.
-
class
PositionalAccuracy
: public osgeo::proj::util::BaseObject¶ - #include <metadata.hpp>
Accuracy of the position of features.
- Remark
Simplified version of PositionalAccuracy from GeoAPI, which originates from ISO_19115
Public Functions
-
const std::string &
value
()¶ Return the value of the positional accuracy.
Public Static Functions
-
PositionalAccuracyNNPtr
create
(const std::string &valueIn)¶ Instantiate a PositionalAccuracy.
- Return
a new PositionalAccuracy.
- Parameters
valueIn
: positional accuracy value.
-
class
TemporalExtent
: public osgeo::proj::util::BaseObject, public osgeo::proj::util::IComparable¶ - #include <metadata.hpp>
Time period covered by the content of the dataset.
- Remark
Simplified version of TemporalExtent from GeoAPI
Public Functions
-
const std::string &
start
()¶ Returns the start of the temporal extent.
-
const std::string &
stop
()¶ Returns the end of the temporal extent.
-
bool
contains
(const TemporalExtentNNPtr &other) const¶ Returns whether this extent contains the other one.
-
bool
intersects
(const TemporalExtentNNPtr &other) const¶ Returns whether this extent intersects the other one.
Public Static Functions
-
TemporalExtentNNPtr
create
(const std::string &start, const std::string &stop)¶ Instantiate a TemporalExtent.
- Return
a new TemporalExtent.
- Parameters
start
: start.stop
: stop.
-
class
VerticalExtent
: public osgeo::proj::util::BaseObject, public osgeo::proj::util::IComparable¶ - #include <metadata.hpp>
Vertical domain of dataset.
- Remark
Simplified version of VerticalExtent from GeoAPI
Public Functions
-
double
minimumValue
()¶ Returns the minimum of the vertical extent.
-
double
maximumValue
()¶ Returns the maximum of the vertical extent.
-
common::UnitOfMeasureNNPtr &
unit
()¶ Returns the unit of the vertical extent.
-
bool
contains
(const VerticalExtentNNPtr &other) const¶ Returns whether this extent contains the other one.
-
bool
intersects
(const VerticalExtentNNPtr &other) const¶ Returns whether this extent intersects the other one.
Public Static Functions
-
VerticalExtentNNPtr
create
(double minimumValue, double maximumValue, const common::UnitOfMeasureNNPtr &unitIn)¶ Instantiate a VerticalExtent.
- Return
a new VerticalExtent.
- Parameters
minimumIn
: minimum.maximumIn
: maximum.unitIn
: unit.
-
using