1#ifndef H5BASEOBJECTIMPL_H
2#define H5BASEOBJECTIMPL_H
4#include "../h5baseobject.h"
6#include "h5gt/H5Group.hpp"
8class OGRCoordinateTransformation;
10template <
typename TBase = H5BaseObject>
19 const std::string& name)
override;
21 h5gt::Group group)
override;
24 const std::string& name)
override;
26 h5gt::Group group)
override;
75 virtual OGRCoordinateTransformation* createCoordinateTransformationToReadData(
76 const std::string& unitsTo)
override;
80 virtual OGRCoordinateTransformation* createCoordinateTransformationToWriteData(
81 const std::string& unitsFrom)
override;
86 const std::string& authName,
const std::string& code)
override;
90 virtual bool setDataUnits(
const std::string& str)
override;
100 virtual h5gt::File
getH5File()
const override;
101 virtual h5gt::Group
getObjG()
const override;
103 virtual std::string
getName()
const override;
106 virtual std::vector<h5gt::Group>
getObjGroupList(
const h5geo::ObjectType& objType,
bool recursive)
override;
107 virtual std::vector<std::string>
getObjNameList(
const h5geo::ObjectType& objType,
bool recursive)
override;
108 virtual size_t getObjCount(
const h5geo::ObjectType& objType,
bool recursive)
override;
120 std::optional<h5gt::Group>
123 virtual std::optional<h5gt::Group>
126 const std::string& groupName)
const;
128 virtual std::optional<h5gt::DataSet>
130 const h5gt::Group& parent,
131 const std::string& datasetName)
const;
Base class for all geo-containers and geo-objects.
Definition h5base.h:182
Definition h5baseimpl.h:8
Base class for geo-objects.
Definition h5baseobject.h:13
Definition h5baseobjectimpl.h:12
virtual H5BasePoints * openPoints(const std::string &name) override
Open H5BasePoints derived points.
Definition h5baseobjectimpl.cpp:113
virtual size_t getObjCount(const h5geo::ObjectType &objType, bool recursive) override
Get number of geo-objects of specified type within current geo-object.
Definition h5baseobjectimpl.cpp:533
virtual std::string getAngularUnits() override
Get angular units for the current geo-object.
Definition h5baseobjectimpl.cpp:453
virtual bool operator==(const H5BaseObject &other) const override
Check if geo-objects are the same (compares HDF5 Groups)
Definition h5baseobjectimpl.cpp:549
virtual std::string getName() const override
Get geo-object's name without path.
Definition h5baseobjectimpl.cpp:508
virtual std::string getTemporalUnits() override
Get temporal units for the current geo-object.
Definition h5baseobjectimpl.cpp:446
virtual std::string getLengthUnits() override
Get length units for the current geo-object.
Definition h5baseobjectimpl.cpp:439
std::optional< h5gt::Group > getParentG(const h5geo::ObjectType &objType)
getParent Search for parent of type ObjectType for the objG
Definition h5baseobjectimpl.cpp:563
virtual std::string getFullName() const override
Get geo-object's name with full path to that object.
Definition h5baseobjectimpl.cpp:515
virtual bool setLengthUnits(const std::string &str) override
Set length units for the current geo-object.
Definition h5baseobjectimpl.cpp:392
virtual std::string getDataUnits() override
Get data units for the current geo-object.
Definition h5baseobjectimpl.cpp:460
virtual H5Base * clone() override
virtual bool setNullValue(double val) override
Set NULL value for the current geo-object.
Definition h5baseobjectimpl.cpp:424
virtual bool setAngularUnits(const std::string &str) override
Set angular units for the current geo-object.
Definition h5baseobjectimpl.cpp:408
virtual bool operator!=(const H5BaseObject &other) const override
Check if geo-objects are not the same (compares HDF5 Groups)
Definition h5baseobjectimpl.cpp:557
virtual std::string getSpatialReference() override
Get spatial reference for current geo-object.
Definition h5baseobjectimpl.cpp:432
virtual bool setDataUnits(const std::string &str) override
Set data units for the current geo-object.
Definition h5baseobjectimpl.cpp:416
virtual std::vector< std::string > getObjNameList(const h5geo::ObjectType &objType, bool recursive) override
Find all geo-objects of specified type within current geo-object and return them as vector of names.
Definition h5baseobjectimpl.cpp:527
virtual h5gt::File getH5File() const override
Get HDF5 file.
Definition h5baseobjectimpl.cpp:474
virtual h5gt::Group getObjG() const override
Get HDF5 Group.
Definition h5baseobjectimpl.cpp:479
virtual bool setSpatialReference(const std::string &str) override
Set spatial reference for current geo-object using authName:code form.
Definition h5baseobjectimpl.cpp:375
virtual bool isEqual(H5BaseObject *other) const override
Check if geo-objects are the same.
Definition h5baseobjectimpl.cpp:538
virtual double getNullValue() override
Get NULL value for the current geo-object.
Definition h5baseobjectimpl.cpp:467
virtual std::vector< h5gt::Group > getObjGroupList(const h5geo::ObjectType &objType, bool recursive) override
Find all geo-objects of specified type within current geo-object and return them as vector of Groups.
Definition h5baseobjectimpl.cpp:521
virtual bool setTemporalUnits(const std::string &str) override
Set temporal units for the current geo-object.
Definition h5baseobjectimpl.cpp:400
Base class for Points.
Definition h5basepoints.h:16
Provides API to work with horizons.
Definition h5horizon.h:17
Provides API to work with 1D points.
Definition h5points1.h:12
Provides API to work with 2D points.
Definition h5points2.h:12
Provides API to work with 3D points.
Definition h5points3.h:12
Provides API to work with 4D points.
Definition h5points4.h:12
H5GEO_EXPORT H5BaseObject * openBaseObject(h5gt::Group group)
Factory function for opening H5BaseObject.
Definition h5baseimpl.cpp:2000
CreationType
Definition h5enum.h:468
Class for creating H5Horizon.
Definition h5base.h:87
Common class for creating H5Points1, H5Points2, H5Points3, H5Points4.
Definition h5base.h:71