Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Public Member Functions | Static Public Attributes | List of all members
witsml2_0::Well Class Reference

#include <Well.h>

Inheritance diagram for witsml2_0::Well:
witsml2_0::AbstractObject WITSML2_NS::AbstractObject common::AbstractObject

Public Member Functions

 Well (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 Well (common::DataObjectRepository *repo, const std::string &guid, const std::string &title)
 
 Well (common::DataObjectRepository *repo, const std::string &guid, const std::string &title, const std::string &operator_, gsoap_eml2_1::eml21__WellStatus statusWell, gsoap_eml2_1::witsml20__WellDirection directionWell)
 Constructor. More...
 
 Well (gsoap_eml2_1::witsml20__Well *fromGsoap)
 
 ~Well ()=default
 
void setGroundElevation (double value, gsoap_eml2_1::eml21__LengthUom uom, const std::string &datum)
 Sets the ground level elevation (land rigs) More...
 
double getGroundElevationValue () const
 Gets the ground level elevation value. More...
 
gsoap_eml2_1::eml21__LengthUom getGroundElevationUom () const
 Gets the ground level elevation unit of measure. More...
 
std::string getGroundElevationDatum () const
 Gets the ground level elevation datum. More...
 
void setTimeZone (bool direction, unsigned short hours, unsigned short minutes=0)
 
bool getTimeZoneDirection () const
 
unsigned short getTimeZoneHours () const
 
unsigned short getTimeZoneMinutes () const
 
double getLocationProjectedX (unsigned int locationIndex)
 
double getLocationProjectedY (unsigned int locationIndex)
 
void pushBackLocation (const std::string &guid, double projectedX, double projectedY, unsigned int projectedCrsEpsgCode)
 
unsigned int geLocationCount () const
 
void pushBackDatum (const std::string &guid, const std::string &title, gsoap_eml2_1::eml21__WellboreDatumReference code, const std::string &datum, gsoap_eml2_1::eml21__LengthUom elevationUnit, double elevation, unsigned int verticalCrsEpsgCode)
 
unsigned int getDatumCount () const
 
std::vector< resqml2::WellboreFeature * > getResqmlWellboreFeatures () const
 
std::vector< Wellbore * > getWellbores () const
 
std::vector< WellCompletion * > getWellcompletions () const
 
virtual std::string getXmlTag () const
 
- Public Member Functions inherited from witsml2_0::AbstractObject
virtual ~AbstractObject ()=default
 
std::string getContentType () const
 
std::string getPartNameInEpcDocument () const
 
std::string getXmlNamespace () const final
 
- Public Member Functions inherited from common::AbstractObject
bool isPartial () const
 
virtual bool isTopLevelElement () const
 
std::string getUuid () const
 
std::string getTitle () const
 
std::string getEditor () const
 
time_t getCreation () const
 
tm getCreationAsTimeStructure () const
 
std::string getOriginator () const
 
std::string getDescription () const
 
time_t getLastUpdate () const
 
tm getLastUpdateAsTimeStructure () const
 
std::string getFormat () const
 
std::string getDescriptiveKeywords () const
 
std::string getVersion () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (time_t creation)
 
void setCreation (const tm &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (time_t lastUpdate)
 
void setLastUpdate (const tm &lastUpdate)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
void setVersion (const std::string &version)
 
void setMetadata (const std::string &title, const std::string &editor, time_t creation, const std::string &originator, const std::string &description, time_t lastUpdate, const std::string &descriptiveKeywords)
 
void serializeIntoStream (std::ostream *stream)
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *gsoapProxy)
 
void setGsoapProxy (gsoap_eml2_1::eml21__AbstractObject *gsoapProxy)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
gsoap_eml2_1::eml21__AbstractObject * getEml21GsoapProxy () const
 
gsoap_eml2_2::eml22__AbstractObject * getEml22GsoapProxy () const
 
void setGsoapProxy (gsoap_eml2_2::eml22__AbstractObject *gsoapProxy)
 
gsoap_eml2_3::eml23__AbstractObject * getEml23GsoapProxy () const
 
void setGsoapProxy (gsoap_eml2_3::eml23__AbstractObject *gsoapProxy)
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml20__DataObjectReference * newResqmlReference () const
 
gsoap_eml2_1::eml21__DataObjectReference * newEmlReference () const
 
gsoap_eml2_2::eml22__DataObjectReference * newEml22Reference () const
 
gsoap_eml2_3::eml23__DataObjectReference * newEml23Reference () const
 
gsoap_resqml2_0_1::resqml20__ContactElementReference * newContactElementReference2_0_1 () const
 
gsoap_eml2_3::resqml22__ContactElement * newContactElementReference2_2 () const
 
common::DataObjectRepositorygetRepository () const
 
virtual std::string getXmlNamespaceVersion () const
 
virtual std::string getQualifiedType () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
unsigned int getAliasCount () const
 
std::string getAliasAuthorityAtIndex (unsigned int index) const
 
std::string getAliasTitleAtIndex (unsigned int index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
unsigned int getActivityCount () const
 
eml2::ActivitygetActivity (unsigned int index) const
 
void pushBackExtraMetadata (const std::string &key, const std::string &value)
 
std::unordered_map< std::string, std::string > getExtraMetadataSet () const
 
std::vector< std::string > getExtraMetadata (const std::string &key) const
 
unsigned int getExtraMetadataCount () const
 
std::string getExtraMetadataKeyAtIndex (unsigned int index) const
 
std::string getExtraMetadataStringValueAtIndex (unsigned int index) const
 

Static Public Attributes

static const char * XML_TAG
 
- Static Public Attributes inherited from witsml2_0::AbstractObject
static const char * XML_NS
 

Additional Inherited Members

- Public Types inherited from common::AbstractObject
enum  hdfDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , LONG_64 = 3 ,
  ULONG_64 = 4 , INT = 5 , UINT = 6 , SHORT = 7 ,
  USHORT = 8 , CHAR = 9 , UCHAR = 10
}
 
- Static Public Member Functions inherited from common::AbstractObject
static void setFormat (const std::string &vendor, const std::string &applicationName, const std::string &applicationVersionNumber)
 

Detailed Description

A well.

Constructor & Destructor Documentation

◆ Well() [1/4]

witsml2_0::Well::Well ( gsoap_resqml2_0_1::eml20__DataObjectReference *  partialObject)
inline

Only to be used in partial transfer context

Parameters
[in,out]partialObjectIf non-null, the partial object.

◆ Well() [2/4]

witsml2_0::Well::Well ( common::DataObjectRepository repo,
const std::string &  guid,
const std::string &  title 
)

Creates an instance of this class in a gsoap context.

Parameters
[in,out]repoThe dataobject repo where the underlying gsoap proxy is going to be created.
guidThe guid to set to this instance. If empty then a new guid will be generated.
titleThe title.

◆ Well() [3/4]

witsml2_0::Well::Well ( common::DataObjectRepository repo,
const std::string &  guid,
const std::string &  title,
const std::string &  operator_,
gsoap_eml2_1::eml21__WellStatus  statusWell,
gsoap_eml2_1::witsml20__WellDirection  directionWell 
)

Constructor.

Exceptions
std::invalid_argumentIf repo == nullptr.
Parameters
[in,out]repoIf non-null, the repo.
guidUnique identifier.
titleThe title.
operator_The operator.
statusWellThe status well.
directionWellThe direction well.

◆ Well() [4/4]

witsml2_0::Well::Well ( gsoap_eml2_1::witsml20__Well *  fromGsoap)
inline

Creates an instance of this class by wrapping a gsoap instance.

Parameters
[in,out]fromGsoapIf non-null, from gsoap.

◆ ~Well()

witsml2_0::Well::~Well ( )
default

Destructor does nothing since the memory is managed by the gsoap context.

Member Function Documentation

◆ geLocationCount()

unsigned int witsml2_0::Well::geLocationCount ( ) const

Ge location count

Returns
An int.

◆ getDatumCount()

unsigned int witsml2_0::Well::getDatumCount ( ) const

Gets datum count

Returns
The datum count.

◆ getGroundElevationDatum()

std::string witsml2_0::Well::getGroundElevationDatum ( ) const

Gets the ground level elevation datum.

Exceptions
std::invalid_argumentIf the ground elevation does not exist.
Returns
The ground level elevation datum.

◆ getGroundElevationUom()

gsoap_eml2_1::eml21__LengthUom witsml2_0::Well::getGroundElevationUom ( ) const

Gets the ground level elevation unit of measure.

Exceptions
std::invalid_argumentIf the ground elevation does not exist.
Returns
The ground level elevation unit of measure.

◆ getGroundElevationValue()

double witsml2_0::Well::getGroundElevationValue ( ) const

Gets the ground level elevation value.

Exceptions
std::invalid_argumentIf the ground elevation does not exist.
Returns
The ground level elevation value.

◆ getLocationProjectedX()

double witsml2_0::Well::getLocationProjectedX ( unsigned int  locationIndex)

Gets location projected x coordinate

Parameters
locationIndexZero-based index of the location.
Returns
The location projected x coordinate.

◆ getLocationProjectedY()

double witsml2_0::Well::getLocationProjectedY ( unsigned int  locationIndex)

Gets location projected y coordinate

Parameters
locationIndexZero-based index of the location.
Returns
The location projected y coordinate.

◆ getResqmlWellboreFeatures()

std::vector<resqml2::WellboreFeature *> witsml2_0::Well::getResqmlWellboreFeatures ( ) const

Gets resqml wellbore features

Returns
Null if it fails, else the resqml wellbore features.

◆ getTimeZoneDirection()

bool witsml2_0::Well::getTimeZoneDirection ( ) const

Get the time zone direction in which the well is located.

Returns
True means the time zone is a positive offset from UTC, false means the time zone is a negative offset from UTC. If the time zone is Z then an arbitrary '+' is returned.

◆ getTimeZoneHours()

unsigned short witsml2_0::Well::getTimeZoneHours ( ) const

Get the time zone hour(s) in which the well is located. Must be used with getTimeZoneDirection and getTimeZoneMinute() to have the complete time zone.

Returns
the deviation hour(s) from UTC.

◆ getTimeZoneMinutes()

unsigned short witsml2_0::Well::getTimeZoneMinutes ( ) const

Get the time zone minute(s) in which the well is located. Must be used with getTimeZoneDirection and getTimeZoneHour() to have the complete time zone.

Returns
the deviation minute(s) from UTC.

◆ getWellbores()

std::vector<Wellbore *> witsml2_0::Well::getWellbores ( ) const

Gets the wellbores

Returns
Null if it fails, else the wellbores.

◆ getWellcompletions()

std::vector<WellCompletion *> witsml2_0::Well::getWellcompletions ( ) const

Gets the wellcompletions

Returns
Null if it fails, else the wellcompletions.

◆ getXmlTag()

virtual std::string witsml2_0::Well::getXmlTag ( ) const
inlinevirtual

Get the standard XML tag without XML namespace for serializing this data object.

Returns
The XML tag.

Implements common::AbstractObject.

◆ pushBackDatum()

void witsml2_0::Well::pushBackDatum ( const std::string &  guid,
const std::string &  title,
gsoap_eml2_1::eml21__WellboreDatumReference  code,
const std::string &  datum,
gsoap_eml2_1::eml21__LengthUom  elevationUnit,
double  elevation,
unsigned int  verticalCrsEpsgCode 
)

Pushes a back datum

Parameters
guidUnique identifier.
titleThe title.
codeThe code.
datumThe datum.
elevationUnitThe elevation unit.
elevationThe elevation.
verticalCrsEpsgCodeThe vertical crs epsg code.

◆ pushBackLocation()

void witsml2_0::Well::pushBackLocation ( const std::string &  guid,
double  projectedX,
double  projectedY,
unsigned int  projectedCrsEpsgCode 
)

Pushes a back location

Parameters
guidUnique identifier.
projectedXThe projected x coordinate.
projectedYThe projected y coordinate.
projectedCrsEpsgCodeThe projected crs epsg code.

◆ setGroundElevation()

void witsml2_0::Well::setGroundElevation ( double  value,
gsoap_eml2_1::eml21__LengthUom  uom,
const std::string &  datum 
)

Sets the ground level elevation (land rigs)

Exceptions
std::invalid_argumentIf value is undefined.
Parameters
valueThe elevation value.
uomThe elevation unit of measure.
datumThe elevation datum.

◆ setTimeZone()

void witsml2_0::Well::setTimeZone ( bool  direction,
unsigned short  hours,
unsigned short  minutes = 0 
)

Set the time zone in which the well is located.It is the deviation in hours and minutes from UTC.This should be the normal time zone at the well and not a seasonally-adjusted value, such as daylight savings time

Parameters
directionTrue means the time zone is a positive offset from UTC, false means the time zone is a negative offset from UTC.
hoursthe deviation hours from UTC.
minutes(Optional)the deviation minutes from UTC.

Member Data Documentation

◆ XML_TAG

const char* witsml2_0::Well::XML_TAG
static

The standard XML tag without XML namespace for serializing this data object.

Returns
The XML tag.

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