h5geo 0.4.0
C++17 and python API to work with geo-data (seismic, wells, maps, other in process) based on HDF5. Aimed at geoscientists and developers.
Loading...
Searching...
No Matches
h5points4impl.h
1#ifndef H5POINTS4IMPL_H
2#define H5POINTS4IMPL_H
3
4#include "../h5points4.h"
5#include "h5basepointsimpl.h"
6
7template <typename TBase = H5Points4>
8class H5Points4Impl : public H5BasePointsImpl<TBase>
9{
10protected:
11 explicit H5Points4Impl(const h5gt::Group &group);
12 virtual ~H5Points4Impl() = default;
13
14public:
15 virtual bool writeData(
16 h5geo::Point4Array& data,
17 const std::string& lengthUnits = "",
18 const std::string& temporalUnits = "",
19 const std::string& dataUnits = "",
20 bool doCoordTransform = false) override;
21
22 virtual h5geo::Point4Array getData(
23 const std::string& lengthUnits = "",
24 const std::string& temporalUnits = "",
25 const std::string& dataUnits = "",
26 bool doCoordTransform = false) override;
27
28protected:
29 bool overwritePointsDataset(
30 h5geo::Point4Array& data,
31 const std::string& lengthUnits = "",
32 const std::string& temporalUnits = "",
33 const std::string& dataUnits = "",
34 bool doCoordTransform = false);
37 bool transformPoints(
38 h5geo::Point4Array& data,
39 bool toReadData,
40 const std::string& lengthUnitsFrom = "",
41 const std::string& lengthUnitsTo = "",
42 const std::string& temporalUnitsFrom = "",
43 const std::string& temporalUnitsTo = "",
44 const std::string& dataUnitsFrom = "",
45 const std::string& dataUnitsTo = "",
46 bool doCoordTransform = false);
47
48 //----------- FRIEND CLASSES -----------
49 friend class H5BaseObjectImpl<H5Points4>;
55 friend class H5BaseObjectImpl<H5BaseObject>;
56 friend class H5BaseObjectImpl<H5BasePoints>;
57 friend class H5BaseObjectImpl<H5Points1>;
58 friend class H5BaseObjectImpl<H5Points2>;
59 friend class H5BaseObjectImpl<H5Points3>;
60 friend class H5BaseObjectImpl<H5WellTops>;
61 friend class H5BaseObjectImpl<H5Horizon>;
62 friend class H5BaseObjectImpl<H5Map>;
63 friend class H5BaseObjectImpl<H5Seis>;
64 friend class H5BaseObjectImpl<H5Vol>;
65 friend class H5BaseObjectImpl<H5Well>;
66 friend class H5BaseObjectImpl<H5DevCurve>;
67 friend class H5BaseObjectImpl<H5LogCurve>;
68 friend H5BasePoints* h5geo::openPoints(h5gt::Group group);
69 friend H5Points4* h5geo::openPoints4(h5gt::Group group);
70};
71
72#endif // H5POINTS4IMPL_H
Base class for geo-containers.
Definition h5basecontainer.h:9
Definition h5basecontainerimpl.h:11
Base class for geo-objects.
Definition h5baseobject.h:13
Definition h5baseobjectimpl.h:12
Base class for Points.
Definition h5basepoints.h:16
Definition h5basepointsimpl.h:12
Provides API to work with well deviations (trajectories)
Definition h5devcurve.h:21
Provides API to work with horizons.
Definition h5horizon.h:17
Provides API to work with well logs.
Definition h5logcurve.h:18
A container built around HDF5 file and used for storing and manipulating H5Map objects.
Definition h5mapcontainer.h:15
Provides API to work with maps.
Definition h5map.h:19
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
Definition h5points4impl.h:9
virtual h5geo::Point4Array getData(const std::string &lengthUnits="", const std::string &temporalUnits="", const std::string &dataUnits="", bool doCoordTransform=false) override
Read data from DataSet.
Definition h5points4impl.cpp:35
virtual bool writeData(h5geo::Point4Array &data, const std::string &lengthUnits="", const std::string &temporalUnits="", const std::string &dataUnits="", bool doCoordTransform=false) override
Write data to DataSet.
Definition h5points4impl.cpp:19
bool transformPoints(h5geo::Point4Array &data, bool toReadData, const std::string &lengthUnitsFrom="", const std::string &lengthUnitsTo="", const std::string &temporalUnitsFrom="", const std::string &temporalUnitsTo="", const std::string &dataUnitsFrom="", const std::string &dataUnitsTo="", bool doCoordTransform=false)
Definition h5points4impl.cpp:111
A container built around HDF5 file and used for storing and manipulating H5Seis objects.
Definition h5seiscontainer.h:15
Provides API to work with seismic.
Definition h5seis.h:33
A container built around HDF5 file and used for storing and manipulating H5Vol objects.
Definition h5volcontainer.h:15
Provides API to work with volumes.
Definition h5vol.h:15
A container built around HDF5 file and used for storing and manipulating H5Well objects.
Definition h5wellcontainer.h:15
Provides API to work with wells.
Definition h5well.h:22
Provides API to work with welltops.
Definition h5welltops.h:12
H5GEO_EXPORT H5Points4 * openPoints4(h5gt::Group group)
Factory function for opening H5Points4.
Definition h5baseimpl.cpp:2304
H5GEO_EXPORT H5BasePoints * openPoints(h5gt::Group group)
Factory function for opening H5BasePoints derived points.
Definition h5baseimpl.cpp:2188