Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
GridConnectionSetRepresentation.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/GridConnectionSetRepresentation.h"
22 
23 namespace RESQML2_0_1_NS
24 {
26  class GridConnectionSetRepresentation final : public RESQML2_NS::GridConnectionSetRepresentation
27  {
28  public:
29 
37  DLL_IMPORT_OR_EXPORT GridConnectionSetRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) :
38  RESQML2_NS::GridConnectionSetRepresentation(partialObject) {}
39 
49  GridConnectionSetRepresentation(RESQML2_NS::AbstractFeatureInterpretation* interp,
50  const std::string & guid, const std::string & title);
51 
59  GridConnectionSetRepresentation(COMMON_NS::DataObjectRepository * repo,
60  const std::string & guid, const std::string & title);
61 
67  GridConnectionSetRepresentation(gsoap_resqml2_0_1::_resqml20__GridConnectionSetRepresentation* fromGsoap) : RESQML2_NS::GridConnectionSetRepresentation(fromGsoap) {}
68 
71 
72  COMMON_NS::DataObjectReference getHdfProxyDor() const final;
73 
74  DLL_IMPORT_OR_EXPORT uint64_t getCellIndexPairCount() const final;
75 
76  DLL_IMPORT_OR_EXPORT uint64_t getCellIndexPairs(uint64_t * cellIndexPairs) const final;
77 
78  DLL_IMPORT_OR_EXPORT unsigned int getCellIndexPairCountFromInterpretationIndex(unsigned int interpretationIndex) const final;
79 
80  DLL_IMPORT_OR_EXPORT bool isAssociatedToInterpretations() const final;
81 
82  DLL_IMPORT_OR_EXPORT void getInterpretationIndexCumulativeCount(unsigned int * cumulativeCount) const final;
83 
84  DLL_IMPORT_OR_EXPORT void getInterpretationIndices(unsigned int * interpretationIndices) const final;
85 
86  DLL_IMPORT_OR_EXPORT int64_t getInterpretationIndexNullValue() const final;
87 
88  DLL_IMPORT_OR_EXPORT void getGridConnectionSetInformationFromInterpretationIndex(uint64_t * cellIndexPairs, unsigned short * gridIndexPairs, int * localFaceIndexPairs, unsigned int interpretationIndex) const final;
89 
90  DLL_IMPORT_OR_EXPORT std::string getInterpretationUuidFromIndex(unsigned int interpretationIndex) const final;
91 
92  DLL_IMPORT_OR_EXPORT unsigned int getInterpretationCount() const final;
93 
94  DLL_IMPORT_OR_EXPORT bool hasLocalFacePerCell() const final;
95 
96  DLL_IMPORT_OR_EXPORT int64_t getLocalFacePerCellIndexPairs(int * localFacePerCellIndexPairs) const final;
97 
98  DLL_IMPORT_OR_EXPORT bool isBasedOnMultiGrids() const final;
99 
100  DLL_IMPORT_OR_EXPORT void getGridIndexPairs(unsigned short * gridIndexPairs) const final;
101 
102  DLL_IMPORT_OR_EXPORT void setCellIndexPairsUsingExistingDataset(uint64_t cellIndexPairCount, const std::string & cellIndexPair, int64_t cellIndexPairNullValue,
103  EML2_NS::AbstractHdfProxy * proxy, int64_t gridIndexPairNullValue = -1, const std::string & gridIndexPair = "") final;
104 
105  DLL_IMPORT_OR_EXPORT void setLocalFacePerCellIndexPairsUsingExistingDataset(const std::string & localFacePerCellIndexPair, int64_t nullValue, EML2_NS::AbstractHdfProxy * proxy) final;
106 
107  DLL_IMPORT_OR_EXPORT void setConnectionInterpretationIndices(unsigned int const* interpretationIndices, unsigned int interpretationIndiceCount, unsigned int nullValue, EML2_NS::AbstractHdfProxy * proxy) final;
108 
109  DLL_IMPORT_OR_EXPORT unsigned int getSupportingGridRepresentationCount() const final;
110 
111  COMMON_NS::DataObjectReference getSupportingGridRepresentationDor(unsigned int index) const final;
112 
116  DLL_IMPORT_OR_EXPORT static const char* XML_NS;
117 
121  DLL_IMPORT_OR_EXPORT virtual std::string getXmlNamespace() const final { return XML_NS; }
122 
123  protected:
124 
132  void init(COMMON_NS::DataObjectRepository * repo, const std::string & guid, const std::string & title);
133 
139  void pushBackXmlInterpretation(RESQML2_NS::AbstractFeatureInterpretation* interp);
140 
141  /*
142  * Pushes back a grid representation which is one of the support of this representation. And
143  * push back this representation as a grid connection information of the grid representation as
144  * well.
145  *
146  * @param [in,out] supportingGridRep If non-null, the supporting grid rep.
147  */
148  void pushBackXmlSupportingGridRepresentation(RESQML2_NS::AbstractGridRepresentation * supportingGridRep);
149  };
150 }
Definition: GridConnectionSetRepresentation.h:27
GridConnectionSetRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
Definition: GridConnectionSetRepresentation.h:37
GridConnectionSetRepresentation(gsoap_resqml2_0_1::_resqml20__GridConnectionSetRepresentation *fromGsoap)
Definition: GridConnectionSetRepresentation.h:67
GridConnectionSetRepresentation(resqml2::AbstractFeatureInterpretation *interp, const std::string &guid, const std::string &title)
Creates an instance of this class in a gsoap context.
common::DataObjectReference getHdfProxyDor() const final
Gets the data object reference of the HDF proxy which is used for storing the numerical values of thi...
GridConnectionSetRepresentation(common::DataObjectRepository *repo, const std::string &guid, const std::string &title)