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
h5points3impl.h
1#ifndef H5POINTS3IMPL_H
2#define H5POINTS3IMPL_H
3
4#include "../h5points3.h"
5#include "h5basepointsimpl.h"
6
7template <typename TBase = H5Points3>
8class H5Points3Impl : public H5BasePointsImpl<TBase>
9{
10protected:
11 explicit H5Points3Impl(const h5gt::Group &group);
12 virtual ~H5Points3Impl() = default;
13
14public:
15 virtual bool writeData(
16 h5geo::Point3Array& data,
17 const std::string& lengthUnits = "",
18 const std::string& temporalUnits = "",
19 bool doCoordTransform = false) override;
20
21 virtual h5geo::Point3Array getData(
22 const std::string& lengthUnits = "",
23 const std::string& temporalUnits = "",
24 bool doCoordTransform = false) override;
25
26protected:
27 bool overwritePointsDataset(
28 h5geo::Point3Array& data,
29 const std::string& lengthUnits = "",
30 const std::string& temporalUnits = "",
31 bool doCoordTransform = false);
34 bool transformPoints(
35 h5geo::Point3Array& data,
36 bool toReadData,
37 const std::string& lengthUnitsFrom = "",
38 const std::string& lengthUnitsTo = "",
39 const std::string& temporalUnitsFrom = "",
40 const std::string& temporalUnitsTo = "",
41 bool doCoordTransform = false);
42
43 //----------- FRIEND CLASSES -----------
44 friend class H5BaseObjectImpl<H5Points3>;
50 friend class H5BaseObjectImpl<H5BaseObject>;
51 friend class H5BaseObjectImpl<H5BasePoints>;
52 friend class H5BaseObjectImpl<H5Points1>;
53 friend class H5BaseObjectImpl<H5Points2>;
54 friend class H5BaseObjectImpl<H5Points4>;
55 friend class H5BaseObjectImpl<H5WellTops>;
56 friend class H5BaseObjectImpl<H5Horizon>;
57 friend class H5BaseObjectImpl<H5Map>;
58 friend class H5BaseObjectImpl<H5Seis>;
59 friend class H5BaseObjectImpl<H5Vol>;
60 friend class H5BaseObjectImpl<H5Well>;
61 friend class H5BaseObjectImpl<H5DevCurve>;
62 friend class H5BaseObjectImpl<H5LogCurve>;
63 friend H5BasePoints* h5geo::openPoints(h5gt::Group group);
64 friend H5Points3* h5geo::openPoints3(h5gt::Group group);
65};
66
67#endif // H5POINTS3IMPL_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
Definition h5points3impl.h:9
bool transformPoints(h5geo::Point3Array &data, bool toReadData, const std::string &lengthUnitsFrom="", const std::string &lengthUnitsTo="", const std::string &temporalUnitsFrom="", const std::string &temporalUnitsTo="", bool doCoordTransform=false)
Definition h5points3impl.cpp:103
virtual bool writeData(h5geo::Point3Array &data, const std::string &lengthUnits="", const std::string &temporalUnits="", bool doCoordTransform=false) override
Write data to DataSet.
Definition h5points3impl.cpp:19
virtual h5geo::Point3Array getData(const std::string &lengthUnits="", const std::string &temporalUnits="", bool doCoordTransform=false) override
Read data from DataSet.
Definition h5points3impl.cpp:33
Provides API to work with 4D points.
Definition h5points4.h:12
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 H5BasePoints * openPoints(h5gt::Group group)
Factory function for opening H5BasePoints derived points.
Definition h5baseimpl.cpp:2188
H5GEO_EXPORT H5Points3 * openPoints3(h5gt::Group group)
Factory function for opening H5Points3.
Definition h5baseimpl.cpp:2277