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
H5WellImpl Class Reference
Inheritance diagram for H5WellImpl:
H5BaseObjectImpl< H5Well > H5BaseImpl< H5Well > H5Well H5BaseObject H5Base

Public Member Functions

virtual H5LogCurveopenLogCurve (const std::string &logType, const std::string &logName) override
 Open H5LogCurve.
 
virtual H5LogCurveopenLogCurve (h5gt::Group group) override
 Open H5LogCurve.
 
virtual H5DevCurveopenDevCurve (const std::string &devName) override
 Open H5DevCurve.
 
virtual H5DevCurveopenDevCurve (h5gt::Group group) override
 Open H5DevCurve.
 
virtual H5WellTopsopenWellTops () override
 Open H5WellTops.
 
virtual H5LogCurvecreateLogCurve (std::string &logType, std::string &logName, H5LogCurveParam &p, h5geo::CreationType createFlag) override
 Create H5LogCurve.
 
virtual H5LogCurvecreateLogCurve (h5gt::Group group, H5LogCurveParam &p, h5geo::CreationType createFlag) override
 Create H5LogCurve.
 
virtual H5DevCurvecreateDevCurve (std::string &devName, H5DevCurveParam &p, h5geo::CreationType createFlag) override
 Create H5DevCurve.
 
virtual H5DevCurvecreateDevCurve (h5gt::Group group, H5DevCurveParam &p, h5geo::CreationType createFlag) override
 Create H5DevCurve.
 
virtual H5WellTopscreateWellTops (H5WellTopsParam &p, h5geo::CreationType createFlag) override
 Create H5WellTops.
 
virtual bool setHeadCoord (Eigen::Ref< Eigen::Vector2d > v, const std::string &lengthUnits="", bool doCoordTransform=false) override
 Set XY well head coordinates.
 
virtual bool setKB (double &val, const std::string &lengthUnits="") override
 Set XY kelly bushing.
 
virtual bool setUWI (const std::string &str) override
 Set UWI Unique Well Identifier.
 
virtual bool setActiveDevCurve (H5DevCurve *curve) override
 Set selected H5DevCurve as active.
 
virtual Eigen::VectorXd getHeadCoord (const std::string &lengthUnits="", bool doCoordTransform=false) override
 Get XY well head coordinates.
 
virtual double getKB (const std::string &lengthUnits="") override
 Set kelly bushing.
 
virtual std::string getUWI () override
 Get UWI Unique Well Identifier.
 
virtual H5DevCurveopenActiveDevCurve () override
 Get active H5DevCurve.
 
virtual std::vector< h5gt::Group > getDevCurveGroupList () override
 Omit active dev curve.
 
virtual std::vector< h5gt::Group > getLogCurveGroupList () override
 Find and return vector of H5LogCurve Groups within current well.
 
virtual std::vector< std::string > getDevCurveNameList () override
 Find and return vector of H5DevCurve names within current well.
 
virtual std::vector< std::string > getLogCurveNameList () override
 Find and return vector of H5LogCurve names within current well.
 
virtual std::vector< std::string > getLogTypeList () override
 Find and return vector of H5LogCurve types within current well.
 
virtual size_t getDevCurveCount () override
 Get number of H5DevCurves within current well.
 
virtual size_t getLogCurveCount () override
 Get number of H5LogCurves within current well.
 
virtual H5WellParam getParam () override
 Get parameters that were used to create current well.
 
virtual H5WellContaineropenWellContainer () override
 Open H5WellContainer where current well resides.
 
virtual std::optional< h5gt::Group > getDevG () override
 Get current well's DEV Group (where H5DevCurves reside)
 
virtual std::optional< h5gt::Group > getActiveDevG () override
 Get current well's active H5DevCurve Group.
 
virtual std::optional< h5gt::Group > getWellTopsG () override
 Get current well's H5WellTops Group.
 
virtual std::optional< h5gt::Group > getLogG () override
 Get current well's LOG Group (where H5LogCurves reside)
 
virtual std::optional< h5gt::Group > getLogTypeG (const std::string &logType) override
 Get current well's logType Group.
 
- Public Member Functions inherited from H5BaseObjectImpl< H5Well >
virtual H5BasePointsopenPoints (const std::string &name) override
 Open H5BasePoints derived points.
 
virtual H5BasePointsopenPoints (h5gt::Group group) override
 Open H5BasePoints derived points.
 
virtual H5HorizonopenHorizon (const std::string &name) override
 
virtual H5HorizonopenHorizon (h5gt::Group group) override
 
virtual H5Points1createPoints1 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points1createPoints1 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points2createPoints2 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points2createPoints2 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points3createPoints3 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points3createPoints3 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points4createPoints4 (std::string &name, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5Points4createPoints4 (h5gt::Group group, H5PointsParam &p, h5geo::CreationType createFlag) override
 
virtual H5HorizoncreateHorizon (std::string &name, H5HorizonParam &p, h5geo::CreationType createFlag) override
 
virtual H5HorizoncreateHorizon (h5gt::Group group, H5HorizonParam &p, h5geo::CreationType createFlag) override
 
virtual H5Baseclone () override
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
H5Baseclone ()
 
virtual bool setSpatialReference (const std::string &str) override
 Set spatial reference for current geo-object using authName:code form.
 
virtual bool setSpatialReference (const std::string &authName, const std::string &code) override
 Set spatial reference for current geo-object.
 
virtual bool setLengthUnits (const std::string &str) override
 Set length units for the current geo-object.
 
virtual bool setTemporalUnits (const std::string &str) override
 Set temporal units for the current geo-object.
 
virtual bool setAngularUnits (const std::string &str) override
 Set angular units for the current geo-object.
 
virtual bool setDataUnits (const std::string &str) override
 Set data units for the current geo-object.
 
virtual bool setNullValue (double val) override
 Set NULL value for the current geo-object.
 
virtual std::string getSpatialReference () override
 Get spatial reference for current geo-object.
 
virtual std::string getLengthUnits () override
 Get length units for the current geo-object.
 
virtual std::string getTemporalUnits () override
 Get temporal units for the current geo-object.
 
virtual std::string getAngularUnits () override
 Get angular units for the current geo-object.
 
virtual std::string getDataUnits () override
 Get data units for the current geo-object.
 
virtual double getNullValue () override
 Get NULL value for the current geo-object.
 
virtual h5gt::File getH5File () const override
 Get HDF5 file.
 
virtual h5gt::Group getObjG () const override
 Get HDF5 Group.
 
virtual std::string getName () const override
 Get geo-object's name without path.
 
virtual std::string getFullName () const override
 Get geo-object's name with full path to that object.
 
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.
 
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.
 
virtual size_t getObjCount (const h5geo::ObjectType &objType, bool recursive) override
 Get number of geo-objects of specified type within current geo-object.
 
virtual bool isEqual (H5BaseObject *other) const override
 Check if geo-objects are the same.
 
virtual bool operator== (const H5BaseObject &other) const override
 Check if geo-objects are the same (compares HDF5 Groups)
 
virtual bool operator!= (const H5BaseObject &other) const override
 Check if geo-objects are not the same (compares HDF5 Groups)
 
- Public Member Functions inherited from H5BaseImpl< H5Well >
virtual void Delete () override
 

Protected Member Functions

 H5WellImpl (const h5gt::Group &group)
 
- Protected Member Functions inherited from H5BaseObjectImpl< H5Well >
 H5BaseObjectImpl (const h5gt::Group &group)
 
std::optional< h5gt::Group > getParentG (const h5geo::ObjectType &objType)
 getParent Search for parent of type ObjectType for the objG
 
virtual std::optional< h5gt::Group > getGroupOpt (h5gt::Group &parent, const std::string &groupName) const
 
virtual std::optional< h5gt::DataSet > getDatasetOpt (const h5gt::Group &parent, const std::string &datasetName) const
 
- Protected Member Functions inherited from H5BaseImpl< H5Well >
virtual std::vector< h5gt::Group > getChildGroupList (h5gt::Group &group, const h5geo::ObjectType &objType, bool recursive=false)
 
virtual std::vector< std::string > getChildNameList (h5gt::Group &group, const h5geo::ObjectType &objType, const std::string &referencePath, bool recursive=false)
 referencePath to get relative path from it (set to empty to get full path)
 
virtual size_t getChildCount (h5gt::Group &group, const h5geo::ObjectType &objType, bool recursive=false)
 
std::optional< h5gt::Group > createObject (std::string &objName, h5gt::File parentFile, const h5geo::ObjectType &objType, void *p, h5geo::CreationType createFlag)
 createObject Creates new object. If CREATE_UNDER_NEW_NAME then objName will be chaged to be unique in its parent file.
 
std::optional< h5gt::Group > createObject (std::string &objName, h5gt::Group parentGroup, const h5geo::ObjectType &objType, void *p, h5geo::CreationType createFlag)
 createObject Creates new object. If CREATE_UNDER_NEW_NAME then objName will be chaged to be unique in its parent group.
 
std::optional< h5gt::Group > createObject (h5gt::Group objG, const h5geo::ObjectType &objType, void *p, h5geo::CreationType createFlag)
 
bool isSuccessor (const h5gt::Group &parentG, const h5gt::Group &childG)
 isSuccessor checks whether childG is successor of parentG
 
bool isSuccessor (const std::string &parent, const std::string &child)
 isSuccessor works only with absolute path!
 

Friends

class H5WellContainerImpl
 
class H5LogCurveImpl
 
class H5DevCurveImpl
 
class H5WellTopsImpl
 
class H5BaseObjectImpl< H5Well >
 
H5Wellh5geo::openWell (h5gt::Group group)
 

Additional Inherited Members

- Static Protected Member Functions inherited from H5BaseImpl< H5Well >
static std::optional< h5gt::File > createContainer (std::string &fileName, const h5geo::ContainerType &containerType, h5geo::CreationType createFlag)
 
static std::optional< h5gt::File > createContainer (h5gt::File h5File, const h5geo::ContainerType &containerType, h5geo::CreationType createFlag)
 
- Protected Attributes inherited from H5BaseObjectImpl< H5Well >
h5gt::Group objG
 

Member Function Documentation

◆ createDevCurve() [1/2]

H5DevCurve * H5WellImpl::createDevCurve ( h5gt::Group group,
H5DevCurveParam & p,
h5geo::CreationType createFlag )
overridevirtual

Create H5DevCurve.

Implements H5Well.

◆ createDevCurve() [2/2]

H5DevCurve * H5WellImpl::createDevCurve ( std::string & devName,
H5DevCurveParam & p,
h5geo::CreationType createFlag )
overridevirtual

Create H5DevCurve.

Implements H5Well.

◆ createLogCurve() [1/2]

H5LogCurve * H5WellImpl::createLogCurve ( h5gt::Group group,
H5LogCurveParam & p,
h5geo::CreationType createFlag )
overridevirtual

Create H5LogCurve.

Implements H5Well.

◆ createLogCurve() [2/2]

H5LogCurve * H5WellImpl::createLogCurve ( std::string & logType,
std::string & logName,
H5LogCurveParam & p,
h5geo::CreationType createFlag )
overridevirtual

Create H5LogCurve.

If logType is empty then logName is considered as relative or full path to the log curve.

Implements H5Well.

◆ createWellTops()

H5WellTops * H5WellImpl::createWellTops ( H5WellTopsParam & p,
h5geo::CreationType createFlag )
overridevirtual

Create H5WellTops.

Created object uses WELLTOPS as name

Implements H5Well.

◆ getActiveDevG()

std::optional< h5gt::Group > H5WellImpl::getActiveDevG ( )
overridevirtual

Get current well's active H5DevCurve Group.

Implements H5Well.

◆ getDevCurveCount()

size_t H5WellImpl::getDevCurveCount ( )
overridevirtual

Get number of H5DevCurves within current well.

Implements H5Well.

◆ getDevCurveGroupList()

std::vector< h5gt::Group > H5WellImpl::getDevCurveGroupList ( )
overridevirtual

Omit active dev curve.

Find and return vector of H5DevCurve Groups within current well

Implements H5Well.

◆ getDevCurveNameList()

std::vector< std::string > H5WellImpl::getDevCurveNameList ( )
overridevirtual

Find and return vector of H5DevCurve names within current well.

Implements H5Well.

◆ getDevG()

std::optional< h5gt::Group > H5WellImpl::getDevG ( )
overridevirtual

Get current well's DEV Group (where H5DevCurves reside)

Implements H5Well.

◆ getHeadCoord()

Eigen::VectorXd H5WellImpl::getHeadCoord ( const std::string & lengthUnits = "",
bool doCoordTransform = false )
overridevirtual

Get XY well head coordinates.

Implements H5Well.

◆ getKB()

double H5WellImpl::getKB ( const std::string & lengthUnits = "")
overridevirtual

Set kelly bushing.

Implements H5Well.

◆ getLogCurveCount()

size_t H5WellImpl::getLogCurveCount ( )
overridevirtual

Get number of H5LogCurves within current well.

Implements H5Well.

◆ getLogCurveGroupList()

std::vector< h5gt::Group > H5WellImpl::getLogCurveGroupList ( )
overridevirtual

Find and return vector of H5LogCurve Groups within current well.

Implements H5Well.

◆ getLogCurveNameList()

std::vector< std::string > H5WellImpl::getLogCurveNameList ( )
overridevirtual

Find and return vector of H5LogCurve names within current well.

Implements H5Well.

◆ getLogG()

std::optional< h5gt::Group > H5WellImpl::getLogG ( )
overridevirtual

Get current well's LOG Group (where H5LogCurves reside)

Implements H5Well.

◆ getLogTypeG()

std::optional< h5gt::Group > H5WellImpl::getLogTypeG ( const std::string & logType)
overridevirtual

Get current well's logType Group.

Implements H5Well.

◆ getLogTypeList()

std::vector< std::string > H5WellImpl::getLogTypeList ( )
overridevirtual

Find and return vector of H5LogCurve types within current well.

Implements H5Well.

◆ getParam()

H5WellParam H5WellImpl::getParam ( )
overridevirtual

Get parameters that were used to create current well.

Implements H5Well.

◆ getUWI()

std::string H5WellImpl::getUWI ( )
overridevirtual

Get UWI Unique Well Identifier.

Implements H5Well.

◆ getWellTopsG()

std::optional< h5gt::Group > H5WellImpl::getWellTopsG ( )
overridevirtual

Get current well's H5WellTops Group.

Implements H5Well.

◆ openActiveDevCurve()

H5DevCurve * H5WellImpl::openActiveDevCurve ( )
overridevirtual

Get active H5DevCurve.

Active H5DevCurve is simply HDF5 SOFT link that uses ACTIVE as name

Implements H5Well.

◆ openDevCurve() [1/2]

H5DevCurve * H5WellImpl::openDevCurve ( const std::string & devName)
overridevirtual

Open H5DevCurve.

Implements H5Well.

◆ openDevCurve() [2/2]

H5DevCurve * H5WellImpl::openDevCurve ( h5gt::Group group)
overridevirtual

Open H5DevCurve.

Implements H5Well.

◆ openLogCurve() [1/2]

H5LogCurve * H5WellImpl::openLogCurve ( const std::string & logType,
const std::string & logName )
overridevirtual

Open H5LogCurve.

If logType is empty then logName is considered as relative or full path to the log curve.

Implements H5Well.

◆ openLogCurve() [2/2]

H5LogCurve * H5WellImpl::openLogCurve ( h5gt::Group group)
overridevirtual

Open H5LogCurve.

Implements H5Well.

◆ openWellContainer()

H5WellContainer * H5WellImpl::openWellContainer ( )
overridevirtual

Open H5WellContainer where current well resides.

Implements H5Well.

◆ openWellTops()

H5WellTops * H5WellImpl::openWellTops ( )
overridevirtual

Open H5WellTops.

Look for H5WellTops with WELLTOPS name

Implements H5Well.

◆ setActiveDevCurve()

bool H5WellImpl::setActiveDevCurve ( H5DevCurve * curve)
overridevirtual

Set selected H5DevCurve as active.

Active H5DevCurve is simply HDF5 SOFT link that uses ACTIVE as name

Implements H5Well.

◆ setHeadCoord()

bool H5WellImpl::setHeadCoord ( Eigen::Ref< Eigen::Vector2d > v,
const std::string & lengthUnits = "",
bool doCoordTransform = false )
overridevirtual

Set XY well head coordinates.

Implements H5Well.

◆ setKB()

bool H5WellImpl::setKB ( double & val,
const std::string & lengthUnits = "" )
overridevirtual

Set XY kelly bushing.

Implements H5Well.

◆ setUWI()

bool H5WellImpl::setUWI ( const std::string & str)
overridevirtual

Set UWI Unique Well Identifier.

Implements H5Well.


The documentation for this class was generated from the following files: