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.
|
Provides API to work with wells. More...
#include <h5well.h>
Public Member Functions | |
virtual H5LogCurve * | openLogCurve (const std::string &logType, const std::string &logName)=0 |
Open H5LogCurve. | |
virtual H5LogCurve * | openLogCurve (h5gt::Group group)=0 |
Open H5LogCurve. | |
virtual H5DevCurve * | openDevCurve (const std::string &devName)=0 |
Open H5DevCurve. | |
virtual H5DevCurve * | openDevCurve (h5gt::Group group)=0 |
Open H5DevCurve. | |
virtual H5WellTops * | openWellTops ()=0 |
Open H5WellTops. | |
virtual H5LogCurve * | createLogCurve (std::string &logType, std::string &logName, H5LogCurveParam &p, h5geo::CreationType createFlag)=0 |
Create H5LogCurve. | |
virtual H5LogCurve * | createLogCurve (h5gt::Group group, H5LogCurveParam &p, h5geo::CreationType createFlag)=0 |
Create H5LogCurve. | |
virtual H5DevCurve * | createDevCurve (std::string &devName, H5DevCurveParam &p, h5geo::CreationType createFlag)=0 |
Create H5DevCurve. | |
virtual H5DevCurve * | createDevCurve (h5gt::Group group, H5DevCurveParam &p, h5geo::CreationType createFlag)=0 |
Create H5DevCurve. | |
virtual H5WellTops * | createWellTops (H5WellTopsParam &p, h5geo::CreationType createFlag)=0 |
Create H5WellTops. | |
virtual bool | setHeadCoord (Eigen::Ref< Eigen::Vector2d > v, const std::string &lengthUnits="", bool doCoordTransform=false)=0 |
Set XY well head coordinates. | |
virtual bool | setKB (double &val, const std::string &lengthUnits="")=0 |
Set XY kelly bushing. | |
virtual bool | setUWI (const std::string &str)=0 |
Set UWI Unique Well Identifier. | |
virtual bool | setActiveDevCurve (H5DevCurve *curve)=0 |
Set selected H5DevCurve as active. | |
virtual Eigen::VectorXd | getHeadCoord (const std::string &lengthUnits="", bool doCoordTransform=false)=0 |
Get XY well head coordinates. | |
virtual double | getKB (const std::string &lengthUnits="")=0 |
Set kelly bushing. | |
virtual std::string | getUWI ()=0 |
Get UWI Unique Well Identifier. | |
virtual H5DevCurve * | openActiveDevCurve ()=0 |
Get active H5DevCurve. | |
virtual std::vector< h5gt::Group > | getDevCurveGroupList ()=0 |
Omit active dev curve. | |
virtual std::vector< h5gt::Group > | getLogCurveGroupList ()=0 |
Find and return vector of H5LogCurve Groups within current well. | |
virtual std::vector< std::string > | getDevCurveNameList ()=0 |
Find and return vector of H5DevCurve names within current well. | |
virtual std::vector< std::string > | getLogCurveNameList ()=0 |
Find and return vector of H5LogCurve names within current well. | |
virtual std::vector< std::string > | getLogTypeList ()=0 |
Find and return vector of H5LogCurve types within current well. | |
virtual size_t | getDevCurveCount ()=0 |
Get number of H5DevCurves within current well. | |
virtual size_t | getLogCurveCount ()=0 |
Get number of H5LogCurves within current well. | |
virtual H5WellParam | getParam ()=0 |
Get parameters that were used to create current well. | |
virtual H5WellContainer * | openWellContainer ()=0 |
Open H5WellContainer where current well resides. | |
virtual std::optional< h5gt::Group > | getDevG ()=0 |
Get current well's DEV Group (where H5DevCurves reside) | |
virtual std::optional< h5gt::Group > | getActiveDevG ()=0 |
Get current well's active H5DevCurve Group. | |
virtual std::optional< h5gt::Group > | getWellTopsG ()=0 |
Get current well's H5WellTops Group. | |
virtual std::optional< h5gt::Group > | getLogG ()=0 |
Get current well's LOG Group (where H5LogCurves reside) | |
virtual std::optional< h5gt::Group > | getLogTypeG (const std::string &logType)=0 |
Get current well's logType Group. | |
Public Member Functions inherited from H5BaseObject | |
virtual H5BasePoints * | openPoints (const std::string &name)=0 |
Open H5BasePoints derived points. | |
virtual H5BasePoints * | openPoints (h5gt::Group group)=0 |
Open H5BasePoints derived points. | |
virtual H5Horizon * | openHorizon (const std::string &name)=0 |
virtual H5Horizon * | openHorizon (h5gt::Group group)=0 |
virtual H5Points1 * | createPoints1 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points1 * | createPoints1 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points2 * | createPoints2 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points2 * | createPoints2 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points3 * | createPoints3 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points3 * | createPoints3 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points4 * | createPoints4 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Points4 * | createPoints4 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Horizon * | createHorizon (std::string &name, H5HorizonParam &p, h5geo::CreationType createFlag)=0 |
virtual H5Horizon * | createHorizon (h5gt::Group group, H5HorizonParam &p, h5geo::CreationType createFlag)=0 |
virtual bool | setSpatialReference (const std::string &str)=0 |
Set spatial reference for current geo-object using authName:code form. | |
virtual bool | setSpatialReference (const std::string &authName, const std::string &code)=0 |
Set spatial reference for current geo-object. | |
virtual bool | setLengthUnits (const std::string &str)=0 |
Set length units for the current geo-object. | |
virtual bool | setTemporalUnits (const std::string &str)=0 |
Set temporal units for the current geo-object. | |
virtual bool | setAngularUnits (const std::string &str)=0 |
Set angular units for the current geo-object. | |
virtual bool | setDataUnits (const std::string &str)=0 |
Set data units for the current geo-object. | |
virtual bool | setNullValue (double val)=0 |
Set NULL value for the current geo-object. | |
virtual std::string | getSpatialReference ()=0 |
Get spatial reference for current geo-object. | |
virtual std::string | getLengthUnits ()=0 |
Get length units for the current geo-object. | |
virtual std::string | getTemporalUnits ()=0 |
Get temporal units for the current geo-object. | |
virtual std::string | getAngularUnits ()=0 |
Get angular units for the current geo-object. | |
virtual std::string | getDataUnits ()=0 |
Get data units for the current geo-object. | |
virtual double | getNullValue ()=0 |
Get NULL value for the current geo-object. | |
virtual h5gt::File | getH5File () const =0 |
Get HDF5 file. | |
virtual h5gt::Group | getObjG () const =0 |
Get HDF5 Group. | |
virtual std::string | getName () const =0 |
Get geo-object's name without path. | |
virtual std::string | getFullName () const =0 |
Get geo-object's name with full path to that object. | |
virtual std::vector< h5gt::Group > | getObjGroupList (const h5geo::ObjectType &objType, bool recursive)=0 |
Find all geo-objects of specified type within current geo-object and return them as vector of Groups. | |
virtual std::vector< std::string > | getObjNameList (const h5geo::ObjectType &objType, bool recursive)=0 |
Find all geo-objects of specified type within current geo-object and return them as vector of names. | |
virtual size_t | getObjCount (const h5geo::ObjectType &objType, bool recursive)=0 |
Get number of geo-objects of specified type within current geo-object. | |
virtual bool | isEqual (H5BaseObject *other) const =0 |
Check if geo-objects are the same. | |
virtual bool | operator== (const H5BaseObject &other) const =0 |
Check if geo-objects are the same (compares HDF5 Groups) | |
virtual bool | operator!= (const H5BaseObject &other) const =0 |
Check if geo-objects are not the same (compares HDF5 Groups) | |
Public Member Functions inherited from H5Base | |
virtual H5Base * | clone ()=0 |
virtual void | Delete ()=0 |
Provides API to work with wells.
Well is an object that doesn't dispose DataSets but uses only HDF5 Groups and Attributes for storing information about well head and kelly bushing for example.
H5DevCurve, H5LogCurve and H5WellTops are separate objects that reside within well.
|
pure virtual |
Create H5DevCurve.
Implemented in H5WellImpl.
|
pure virtual |
Create H5DevCurve.
Implemented in H5WellImpl.
|
pure virtual |
Create H5LogCurve.
Implemented in H5WellImpl.
|
pure virtual |
Create H5LogCurve.
If logType
is empty then logName
is considered as relative or full path to the log curve.
Implemented in H5WellImpl.
|
pure virtual |
|
pure virtual |
Get current well's active H5DevCurve Group.
Implemented in H5WellImpl.
|
pure virtual |
Get number of H5DevCurves within current well.
Implemented in H5WellImpl.
|
pure virtual |
Omit active dev curve.
Find and return vector of H5DevCurve Groups within current well
Implemented in H5WellImpl.
|
pure virtual |
Find and return vector of H5DevCurve names within current well.
Implemented in H5WellImpl.
|
pure virtual |
Get current well's DEV
Group (where H5DevCurves reside)
Implemented in H5WellImpl.
|
pure virtual |
Get XY
well head coordinates.
Implemented in H5WellImpl.
|
pure virtual |
Set kelly bushing.
Implemented in H5WellImpl.
|
pure virtual |
Get number of H5LogCurves within current well.
Implemented in H5WellImpl.
|
pure virtual |
Find and return vector of H5LogCurve Groups within current well.
Implemented in H5WellImpl.
|
pure virtual |
Find and return vector of H5LogCurve names within current well.
Implemented in H5WellImpl.
|
pure virtual |
Get current well's LOG
Group (where H5LogCurves reside)
Implemented in H5WellImpl.
|
pure virtual |
Get current well's logType
Group.
Implemented in H5WellImpl.
|
pure virtual |
Find and return vector of H5LogCurve types within current well.
Implemented in H5WellImpl.
|
pure virtual |
Get parameters that were used to create current well.
Implemented in H5WellImpl.
|
pure virtual |
Get UWI
Unique Well Identifier.
Implemented in H5WellImpl.
|
pure virtual |
Get current well's H5WellTops Group.
Implemented in H5WellImpl.
|
pure virtual |
Get active H5DevCurve.
Active H5DevCurve is simply HDF5 SOFT
link that uses ACTIVE
as name
Implemented in H5WellImpl.
|
pure virtual |
Open H5DevCurve.
Implemented in H5WellImpl.
|
pure virtual |
Open H5DevCurve.
Implemented in H5WellImpl.
|
pure virtual |
Open H5LogCurve.
If logType
is empty then logName
is considered as relative or full path to the log curve.
Implemented in H5WellImpl.
|
pure virtual |
Open H5LogCurve.
Implemented in H5WellImpl.
|
pure virtual |
Open H5WellContainer where current well resides.
Implemented in H5WellImpl.
|
pure virtual |
|
pure virtual |
Set selected H5DevCurve as active.
Active H5DevCurve is simply HDF5 SOFT
link that uses ACTIVE
as name
Implemented in H5WellImpl.
|
pure virtual |
Set XY
well head coordinates.
Implemented in H5WellImpl.
|
pure virtual |
Set XY
kelly bushing.
Implemented in H5WellImpl.
|
pure virtual |
Set UWI
Unique Well Identifier.
Implemented in H5WellImpl.