Fesapi  0.13.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
WellboreFrameRepresentation.h
1 /*-----------------------------------------------------------------------
2 Licensed to the Apache Software Foundation (ASF) under one
3 or more contributor license agreements. See the NOTICE file
4 distributed with this work for additional information
5 regarding copyright ownership. The ASF licenses this file
6 to you under the Apache License, Version 2.0 (the
7 "License"; you may not use this file except in compliance
8 with the License. You may obtain a copy of the License at
9 
10  http://www.apache.org/licenses/LICENSE-2.0
11 
12 Unless required by applicable law or agreed to in writing,
13 software distributed under the License is distributed on an
14 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 KIND, either express or implied. See the License for the
16 specific language governing permissions and limitations
17 under the License.
18 -----------------------------------------------------------------------*/
19 #pragma once
20 
21 #include "resqml2/AbstractRepresentation.h"
22 #include "resqml2/AbstractValuesProperty.h"
23 
24 namespace WITSML1_4_1_1_NS
25 {
26  class Log;
27 }
28 
29 namespace RESQML2_0_1_NS
30 {
32  {
33  protected:
34  gsoap_resqml2_0_1::resqml2__PointGeometry* getPointGeometry2_0_1(const unsigned int & patchIndex) const {return nullptr;}
35 
36  WellboreFrameRepresentation(RESQML2_NS::AbstractFeatureInterpretation* interp, RESQML2_NS::AbstractLocal3dCrs * crs) : AbstractRepresentation(interp, crs), trajectory(nullptr), witsmlLog(nullptr) {}
37 
38  public:
39 
43  WellboreFrameRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) :
44  RESQML2_NS::AbstractRepresentation(partialObject)
45  {
46  }
47 
55  WellboreFrameRepresentation(class WellboreInterpretation* interp, const std::string & guid, const std::string & title, class WellboreTrajectoryRepresentation * traj);
56 
60  WellboreFrameRepresentation(gsoap_resqml2_0_1::_resqml2__WellboreFrameRepresentation* fromGsoap): AbstractRepresentation(fromGsoap), trajectory(nullptr), witsmlLog(nullptr) {}
61 
63 
70  void setMdValues(double * mdValues, const unsigned int & mdValueCount, COMMON_NS::AbstractHdfProxy* proxy);
71 
78  void setMdValues(const double & firstMdValue, const double & incrementMdValue, const unsigned int & mdValueCount);
79 
84  bool areMdValuesRegularlySpaced() const;
85 
90  double getMdConstantIncrementValue() const;
91 
95  double getMdFirstValue() const;
96 
100  unsigned int getMdValuesCount() const;
101 
105  ULONG64 getXyzPointCountOfPatch(const unsigned int & patchIndex) const {return getMdValuesCount();}
106 
112  void getXyzPointsOfPatch(const unsigned int & patchIndex, double * xyzPoints) const;
113 
117  RESQML2_NS::AbstractValuesProperty::hdfDatatypeEnum getMdHdfDatatype() const;
118 
122  void getMdAsDoubleValues(double * values);
123 
127  void getMdAsFloatValues(float * values);
128 
132  std::string getWellboreTrajectoryUuid() const;
133 
138 
139  gsoap_resqml2_0_1::eml20__DataObjectReference* getLocalCrsDor() const;
140 
141  std::string getHdfProxyUuid() const;
142 
143  unsigned int getPatchCount() const {return 1;}
144 
145  void setWitsmlLog(WITSML1_4_1_1_NS::Log * witsmlLogToSet);
146  WITSML1_4_1_1_NS::Log* getWitsmlLog() {return witsmlLog;}
147 
148  static const char* XML_TAG;
149  virtual std::string getXmlTag() const {return XML_TAG;}
150 
151  protected:
152 
153  virtual std::vector<epc::Relationship> getAllEpcRelationships() const;
154  virtual void importRelationshipSetFromEpc(COMMON_NS::EpcDocument* epcDoc);
155 
156  class WellboreTrajectoryRepresentation * trajectory;
157  WITSML1_4_1_1_NS::Log * witsmlLog;
158  };
159 }
160 
Definition: WellboreTrajectoryRepresentation.h:30
gsoap_resqml2_0_1::resqml2__PointGeometry * getPointGeometry2_0_1(const unsigned int &patchIndex) const
Definition: WellboreFrameRepresentation.h:34
virtual std::string getXmlTag() const
Definition: WellboreFrameRepresentation.h:149
Definition: Log.h:29
WellboreFrameRepresentation(gsoap_resqml2_0_1::_resqml2__WellboreFrameRepresentation *fromGsoap)
Definition: WellboreFrameRepresentation.h:60
Definition: AbstractRepresentation.h:31
class WellboreTrajectoryRepresentation * getWellboreTrajectory()
Definition: WellboreFrameRepresentation.h:137
Definition: AbstractFeatureInterpretation.h:30
Definition: EpcDocument.h:65
Definition: EpcDocument.h:130
Definition: EpcDocument.h:154
Definition: WellboreFrameRepresentation.h:31
ULONG64 getXyzPointCountOfPatch(const unsigned int &patchIndex) const
Definition: WellboreFrameRepresentation.h:105
Definition: AbstractHdfProxy.h:30
Definition: WellboreInterpretation.h:26
Definition: AbstractLocal3dCrs.h:25
Definition: EpcDocument.h:49
WellboreFrameRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
Definition: WellboreFrameRepresentation.h:43