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