Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Grid2dRepresentation.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/Grid2dRepresentation.h"
22 
23 namespace RESQML2_2_NS
24 {
26  class Grid2dRepresentation final : public RESQML2_NS::Grid2dRepresentation
27  {
28  public:
29 
35  DLL_IMPORT_OR_EXPORT Grid2dRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) : RESQML2_NS::Grid2dRepresentation(partialObject) {}
36 
48  Grid2dRepresentation(RESQML2_NS::AbstractFeatureInterpretation* interp,
49  const std::string & guid, const std::string & title);
50 
56  Grid2dRepresentation(gsoap_eml2_3::_resqml22__Grid2dRepresentation* fromGsoap): RESQML2_NS::Grid2dRepresentation(fromGsoap) {}
57 
59  ~Grid2dRepresentation() = default;
60 
61  COMMON_NS::DataObjectReference getHdfProxyDor() const final;
62 
63  DLL_IMPORT_OR_EXPORT uint64_t getNodeCountAlongIAxis() const final;
64 
65  DLL_IMPORT_OR_EXPORT uint64_t getNodeCountAlongJAxis() const final;
66 
67  DLL_IMPORT_OR_EXPORT void getZValues(double * values) const final;
68 
69  DLL_IMPORT_OR_EXPORT double getXOrigin() const final;
70 
71  DLL_IMPORT_OR_EXPORT double getYOrigin() const final;
72 
73  DLL_IMPORT_OR_EXPORT double getZOrigin() const final;
74 
75  DLL_IMPORT_OR_EXPORT double getXJOffset() const final;
76 
77  DLL_IMPORT_OR_EXPORT double getYJOffset() const final;
78 
79  DLL_IMPORT_OR_EXPORT double getZJOffset() const final;
80 
81  DLL_IMPORT_OR_EXPORT double getXIOffset() const final;
82 
83  DLL_IMPORT_OR_EXPORT double getYIOffset() const final;
84 
85  DLL_IMPORT_OR_EXPORT double getZIOffset() const final;
86 
87  DLL_IMPORT_OR_EXPORT bool isJSpacingConstant() const final;
88 
89  DLL_IMPORT_OR_EXPORT bool isISpacingConstant() const final;
90 
91  DLL_IMPORT_OR_EXPORT double getJSpacing() const final;
92 
93  DLL_IMPORT_OR_EXPORT void getJSpacing(double* jSpacings) const final;
94 
95  DLL_IMPORT_OR_EXPORT double getISpacing() const final;
96 
97  DLL_IMPORT_OR_EXPORT void getISpacing(double* iSpacings) const final;
98 
99  DLL_IMPORT_OR_EXPORT void setGeometryAsArray2dOfLatticePoints3d(
100  unsigned int numPointsInFastestDirection, unsigned int numPointsInSlowestDirection,
101  double xOrigin, double yOrigin, double zOrigin,
102  double xOffsetInFastestDirection, double yOffsetInFastestDirection, double zOffsetInFastestDirection,
103  double xOffsetInSlowestDirection, double yOffsetInSlowestDirection, double zOffsetInSlowestDirection,
104  double spacingInFastestDirection, double spacingInSlowestDirection, RESQML2_NS::AbstractLocal3dCrs * localCrs = nullptr) final;
105 
106  DLL_IMPORT_OR_EXPORT void setGeometryAsArray2dOfExplicitZ(
107  double * zValues,
108  unsigned int numI, unsigned int numJ, EML2_NS::AbstractHdfProxy* proxy,
109  RESQML2_NS::Grid2dRepresentation * supportingGrid2dRepresentation, RESQML2_NS::AbstractLocal3dCrs * localCrs = nullptr,
110  unsigned int startIndexI = 0, unsigned int startIndexJ = 0,
111  int indexIncrementI = 1, int indexIncrementJ = 1) final;
112 
113  DLL_IMPORT_OR_EXPORT void setGeometryAsArray2dOfExplicitZ(
114  double * zValues,
115  unsigned int numI, unsigned int numJ, EML2_NS::AbstractHdfProxy* proxy,
116  double originX, double originY, double originZ,
117  double offsetIX, double offsetIY, double offsetIZ, double spacingI,
118  double offsetJX, double offsetJY, double offsetJZ, double spacingJ, RESQML2_NS::AbstractLocal3dCrs * localCrs = nullptr) final;
119 
120  COMMON_NS::DataObjectReference getSupportingRepresentationDor() const final;
121 
122  DLL_IMPORT_OR_EXPORT int getIndexOriginOnSupportingRepresentation() const final;
123 
124  DLL_IMPORT_OR_EXPORT int getIndexOriginOnSupportingRepresentation(unsigned int dimension) const final;
125 
126  DLL_IMPORT_OR_EXPORT int getNodeCountOnSupportingRepresentation(unsigned int dimension) const final;
127 
128  DLL_IMPORT_OR_EXPORT int getIndexOffsetOnSupportingRepresentation(unsigned int dimension) const final;
129 
133  DLL_IMPORT_OR_EXPORT static const char* XML_NS;
134 
138  DLL_IMPORT_OR_EXPORT std::string getXmlNamespace() const final { return XML_NS; }
139 
140  private:
141 
142  gsoap_eml2_3::resqml22__PointGeometry* getPointGeometry2_2(unsigned int patchIndex) const final;
143 
149  gsoap_eml2_3::resqml22__Point3dLatticeArray* getArrayLatticeOfPoints3d() const;
150 
159  gsoap_eml2_3::resqml22__Point3dFromRepresentationLatticeArray* getPoint3dFromRepresentationLatticeArrayFromPointGeometryPatch(gsoap_eml2_3::resqml22__PointGeometry* patch) const;
160 
181  gsoap_eml2_3::resqml22__PointGeometry* createArray2dOfLatticePoints3d(
182  unsigned int numPointsInFastestDirection, unsigned int numPointsInSlowestDirection,
183  double xOrigin, double yOrigin, double zOrigin,
184  double xOffsetInFastestDirection, double yOffsetInFastestDirection, double zOffsetInFastestDirection,
185  double xOffsetInSlowestDirection, double yOffsetInSlowestDirection, double zOffsetInSlowestDirection,
186  double spacingInFastestDirection, double spacingInSlowestDirection, RESQML2_NS::AbstractLocal3dCrs * localCrs);
187 
218  gsoap_eml2_3::resqml22__PointGeometry* createArray2dOfExplicitZ(
219  unsigned int patchIndex, double * zValues, RESQML2_NS::AbstractLocal3dCrs * localCrs,
220  unsigned int numI, unsigned int numJ, EML2_NS::AbstractHdfProxy* proxy,
221  RESQML2_NS::Grid2dRepresentation * supportingRepresentation,
222  unsigned int startGlobalIndex = 0,
223  int indexIncrementI = 1, int indexIncrementJ = 1);
224 
250  gsoap_eml2_3::resqml22__PointGeometry* createArray2dOfExplicitZ(
251  unsigned int patchIndex, double * zValues, RESQML2_NS::AbstractLocal3dCrs * localCrs,
252  unsigned int numI, unsigned int numJ, EML2_NS::AbstractHdfProxy* proxy,
253  double originX, double originY, double originZ,
254  double offsetIX, double offsetIY, double offsetIZ, double spacingI,
255  double offsetJX, double offsetJY, double offsetJZ, double spacingJ);
256  };
257 }
Definition: Grid2dRepresentation.h:27
Grid2dRepresentation(resqml2::AbstractFeatureInterpretation *interp, const std::string &guid, const std::string &title)
Grid2dRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
Definition: Grid2dRepresentation.h:35
Grid2dRepresentation(gsoap_eml2_3::_resqml22__Grid2dRepresentation *fromGsoap)
Definition: Grid2dRepresentation.h:56
common::DataObjectReference getHdfProxyDor() const final
Gets the data object reference of the HDF proxy which is used for storing the numerical values of thi...