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
h5points2impl.h
1#ifndef H5POINTS2IMPL_H
2#define H5POINTS2IMPL_H
3
4#include "../h5points2.h"
5#include "h5basepointsimpl.h"
6
7template <typename TBase = H5Points2>
8class H5Points2Impl : public H5BasePointsImpl<TBase>
9{
10protected:
11 explicit H5Points2Impl(const h5gt::Group &group);
12 virtual ~H5Points2Impl() = default;
13
14public:
15 virtual bool writeData(
16 h5geo::Point2Array& data,
17 const std::string& lengthUnits = "",
18 bool doCoordTransform = false) override;
19
20 virtual h5geo::Point2Array getData(
21 const std::string& lengthUnits = "",
22 bool doCoordTransform = false) override;
23
24protected:
25 bool overwritePointsDataset(
26 h5geo::Point2Array& data,
27 const std::string& lengthUnits = "",
28 bool doCoordTransform = false);
31 bool transformPoints(
32 h5geo::Point2Array& data,
33 bool toReadData,
34 const std::string& lengthUnitsFrom = "",
35 const std::string& lengthUnitsTo = "",
36 bool doCoordTransform = false);
37
38 //----------- FRIEND CLASSES -----------
39 friend class H5BaseObjectImpl<H5Points2>;
45 friend class H5BaseObjectImpl<H5BaseObject>;
46 friend class H5BaseObjectImpl<H5BasePoints>;
47 friend class H5BaseObjectImpl<H5Points1>;
48 friend class H5BaseObjectImpl<H5Points3>;
49 friend class H5BaseObjectImpl<H5Points4>;
50 friend class H5BaseObjectImpl<H5WellTops>;
51 friend class H5BaseObjectImpl<H5Horizon>;
52 friend class H5BaseObjectImpl<H5Map>;
53 friend class H5BaseObjectImpl<H5Seis>;
54 friend class H5BaseObjectImpl<H5Vol>;
55 friend class H5BaseObjectImpl<H5Well>;
56 friend class H5BaseObjectImpl<H5DevCurve>;
57 friend class H5BaseObjectImpl<H5LogCurve>;
58 friend H5BasePoints* h5geo::openPoints(h5gt::Group group);
59 friend H5Points2* h5geo::openPoints2(h5gt::Group group);
60};
61
62#endif // H5POINTS2IMPL_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
Definition h5points2impl.h:9
virtual h5geo::Point2Array getData(const std::string &lengthUnits="", bool doCoordTransform=false) override
Read data from DataSet.
Definition h5points2impl.cpp:31
virtual bool writeData(h5geo::Point2Array &data, const std::string &lengthUnits="", bool doCoordTransform=false) override
Write data to DataSet.
Definition h5points2impl.cpp:19
bool transformPoints(h5geo::Point2Array &data, bool toReadData, const std::string &lengthUnitsFrom="", const std::string &lengthUnitsTo="", bool doCoordTransform=false)
Definition h5points2impl.cpp:95
Provides API to work with 3D points.
Definition h5points3.h:12
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 H5Points2 * openPoints2(h5gt::Group group)
Factory function for opening H5Points2.
Definition h5baseimpl.cpp:2250
H5GEO_EXPORT H5BasePoints * openPoints(h5gt::Group group)
Factory function for opening H5BasePoints derived points.
Definition h5baseimpl.cpp:2188