Fesapi 2.10.1.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Loading...
Searching...
No Matches
witsml2_1::Well Class Reference

Contains all information that is the same for all wellbores (sidetracks). More...

#include <Well.h>

Inheritance diagram for witsml2_1::Well:
WITSML2_NS::Well 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, bool isActive)
 
 Well (common::DataObjectRepository *repo, const std::string &guid, const std::string &title, bool isActive, gsoap_eml2_3::eml23__WellStatus statusWell, gsoap_eml2_3::witsml21__WellDirection directionWell)
 Constructor.
 
 Well (gsoap_eml2_3::witsml21__Well *fromGsoap)
 
 ~Well ()=default
 
void setGroundElevation (double value, gsoap_eml2_3::eml23__LengthUom uom, eml2_3::VerticalCrs *verticalCrs) final
 Sets the ground level elevation (land rigs)
 
double getGroundElevationValue () const final
 Gets the ground level elevation value.
 
gsoap_eml2_3::eml23__LengthUom getGroundElevationUom () const final
 Gets the ground level elevation unit of measure.
 
common::DataObjectReference getGroundElevationDatumDor () const final
 
virtual void setWellheadElevation (double value, gsoap_eml2_3::eml23__LengthUom uom, eml2_3::VerticalCrs *verticalCrs) final
 Sets the well head elevation.
 
virtual double getWellheadElevationValue () const final
 Gets the well head elevation value.
 
virtual gsoap_eml2_3::eml23__LengthUom getWellheadElevationUom () const final
 Gets the well head elevation unit of measure.
 
virtual common::DataObjectReference getWellheadElevationDatumDor () const final
 
void setTimeZone (bool direction, unsigned short hours, unsigned short minutes) final
 
bool getTimeZoneDirection () const final
 
unsigned short getTimeZoneHours () const final
 
unsigned short getTimeZoneMinutes () const final
 
double getLocationProjectedX (uint64_t locationIndex) final
 
double getLocationProjectedY (uint64_t locationIndex) final
 
void pushBackLocation (double projectedX, double projectedY, eml2_3::LocalEngineering2dCrs *crs) final
 
uint64_t geLocationCount () const final
 
std::string getXmlNamespace () const final
 
- Public Member Functions inherited from WITSML2_NS::Well
 Well (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
eml2_3::VerticalCrsgetGroundElevationDatum () const
 
eml2_3::VerticalCrsgetWellheadElevationDatum () const
 
virtual std::string getXmlTag () 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)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *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_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 getContentType () const
 
virtual std::string getQualifiedType () const
 
virtual std::string getPartNameInEpcDocument () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
uint64_t getAliasCount () const
 
std::string getAliasAuthorityAtIndex (uint64_t index) const
 
std::string getAliasTitleAtIndex (uint64_t index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
uint64_t getActivityCount () const
 
eml2::ActivitygetActivity (uint64_t 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
 
std::string buildEtp12Uri () const
 
void setUriSource (const std::string &uriSource)
 
const std::string & getUriSource () const
 
std::string getEpcSourceFolder () const
 
void changeToPartialObject ()
 

Static Public Attributes

static constexpr char const * XML_NS = "witsml21"
 
- Static Public Attributes inherited from WITSML2_NS::Well
static constexpr char const * XML_TAG = "Well"
 

Additional Inherited Members

- Public Types inherited from common::AbstractObject
enum class  numericalDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , INT64 = 3 ,
  UINT64 = 4 , INT32 = 5 , UINT32 = 6 , INT16 = 7 ,
  UINT16 = 8 , INT8 = 9 , UINT8 = 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

Contains all information that is the same for all wellbores (sidetracks).

Constructor & Destructor Documentation

◆ Well() [1/4]

witsml2_1::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_1::Well::Well ( common::DataObjectRepository * repo,
const std::string & guid,
const std::string & title,
bool isActive )

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.
isActiveTrue if is active, false if not.

◆ Well() [3/4]

witsml2_1::Well::Well ( common::DataObjectRepository * repo,
const std::string & guid,
const std::string & title,
bool isActive,
gsoap_eml2_3::eml23__WellStatus statusWell,
gsoap_eml2_3::witsml21__WellDirection directionWell )

Constructor.

Exceptions
std::invalid_argumentIf repo == nullptr.
Parameters
[in,out]repoIf non-null, the repo.
guidUnique identifier.
titleThe title.
isActiveTrue if is active, false if not.
statusWellThe status well.
directionWellThe direction well.

◆ Well() [4/4]

witsml2_1::Well::Well ( gsoap_eml2_3::witsml21__Well * fromGsoap)
inline

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

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

◆ ~Well()

witsml2_1::Well::~Well ( )
virtualdefault

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

Reimplemented from WITSML2_NS::Well.

Member Function Documentation

◆ geLocationCount()

uint64_t witsml2_1::Well::geLocationCount ( ) const
finalvirtual

Ge location count

Returns
An int.

Implements WITSML2_NS::Well.

◆ getGroundElevationDatumDor()

common::DataObjectReference witsml2_1::Well::getGroundElevationDatumDor ( ) const
finalvirtual

Gets the data object reference of the datum of this ground elevation.

Returns
The data object reference of the datum of this ground elevation.

Implements WITSML2_NS::Well.

◆ getGroundElevationUom()

gsoap_eml2_3::eml23__LengthUom witsml2_1::Well::getGroundElevationUom ( ) const
finalvirtual

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.

Implements WITSML2_NS::Well.

◆ getGroundElevationValue()

double witsml2_1::Well::getGroundElevationValue ( ) const
finalvirtual

Gets the ground level elevation value.

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

Implements WITSML2_NS::Well.

◆ getLocationProjectedX()

double witsml2_1::Well::getLocationProjectedX ( uint64_t locationIndex)
finalvirtual

Gets location projected x coordinate

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

Implements WITSML2_NS::Well.

◆ getLocationProjectedY()

double witsml2_1::Well::getLocationProjectedY ( uint64_t locationIndex)
finalvirtual

Gets location projected y coordinate

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

Implements WITSML2_NS::Well.

◆ getTimeZoneDirection()

bool witsml2_1::Well::getTimeZoneDirection ( ) const
finalvirtual

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.

Implements WITSML2_NS::Well.

◆ getTimeZoneHours()

unsigned short witsml2_1::Well::getTimeZoneHours ( ) const
finalvirtual

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.

Implements WITSML2_NS::Well.

◆ getTimeZoneMinutes()

unsigned short witsml2_1::Well::getTimeZoneMinutes ( ) const
finalvirtual

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.

Implements WITSML2_NS::Well.

◆ getWellheadElevationDatumDor()

virtual common::DataObjectReference witsml2_1::Well::getWellheadElevationDatumDor ( ) const
finalvirtual

Gets the data object reference of the datum of this well head elevation.

Returns
The data object reference of the datum of this well head elevation.

Implements WITSML2_NS::Well.

◆ getWellheadElevationUom()

virtual gsoap_eml2_3::eml23__LengthUom witsml2_1::Well::getWellheadElevationUom ( ) const
finalvirtual

Gets the well head elevation unit of measure.

Exceptions
std::invalid_argumentIf the well head elevation does not exist.
Returns
The well head elevation unit of measure.

Implements WITSML2_NS::Well.

◆ getWellheadElevationValue()

virtual double witsml2_1::Well::getWellheadElevationValue ( ) const
finalvirtual

Gets the well head elevation value.

Exceptions
std::invalid_argumentIf the well head elevation does not exist.
Returns
The well head elevation value.

Implements WITSML2_NS::Well.

◆ getXmlNamespace()

std::string witsml2_1::Well::getXmlNamespace ( ) const
inlinefinalvirtual

Get the standard XML namespace for serializing this data object.

Implements common::AbstractObject.

◆ pushBackLocation()

void witsml2_1::Well::pushBackLocation ( double projectedX,
double projectedY,
eml2_3::LocalEngineering2dCrs * crs )
finalvirtual

Pushes a back location

Parameters
projectedXThe projected x coordinate.
projectedYThe projected y coordinate.
crsThe CRS of the X and Y coordinates.

Implements WITSML2_NS::Well.

◆ setGroundElevation()

void witsml2_1::Well::setGroundElevation ( double value,
gsoap_eml2_3::eml23__LengthUom uom,
eml2_3::VerticalCrs * verticalCrs )
finalvirtual

Sets the ground level elevation (land rigs)

Exceptions
std::invalid_argumentIf value is undefined.
Parameters
valueThe elevation value.
uomThe elevation unit of measure.
verticalCrsThe vertical CRS which is used as the datum for the ground elevation

Implements WITSML2_NS::Well.

◆ setTimeZone()

void witsml2_1::Well::setTimeZone ( bool direction,
unsigned short hours,
unsigned short minutes )
finalvirtual

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.
minutesThe deviation minutes from UTC.

Implements WITSML2_NS::Well.

◆ setWellheadElevation()

virtual void witsml2_1::Well::setWellheadElevation ( double value,
gsoap_eml2_3::eml23__LengthUom uom,
eml2_3::VerticalCrs * verticalCrs )
finalvirtual

Sets the well head elevation.

Exceptions
std::invalid_argumentIf value is undefined.
Parameters
valueThe elevation value.
uomThe elevation unit of measure.
verticalCrsThe vertical CRS which is used as the datum for the well head elevation

Implements WITSML2_NS::Well.

Member Data Documentation

◆ XML_NS

char const* witsml2_1::Well::XML_NS = "witsml21"
staticconstexpr

The standard XML namespace for serializing this data object.


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