Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
SealedVolumeFrameworkRepresentation.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 "RepresentationSetRepresentation.h"
22 
23 namespace RESQML2_NS
24 {
25  class SealedSurfaceFrameworkRepresentation;
26  class StratigraphicColumnRankInterpretation;
27  class StratigraphicUnitInterpretation;
28 
37  {
38  public:
39 
42 
52 
63  DLL_IMPORT_OR_EXPORT void setInterpretationOfVolumeRegion(unsigned int regionIndex, StratigraphicUnitInterpretation * stratiUnitInterp);
64 
89  DLL_IMPORT_OR_EXPORT virtual void pushBackVolumeRegion(StratigraphicUnitInterpretation * stratiUnitInterp,
90  unsigned int externalShellFaceCount,
91  unsigned int const* faceRepresentationIndices, unsigned int const* faceRepPatchIndices, bool const* faceSide) = 0;
92 
116  DLL_IMPORT_OR_EXPORT virtual void pushBackInternalShell(unsigned int regionIndex,
117  unsigned int internalShellFaceCount,
118  unsigned int const* faceRepresentationIndices, unsigned int const* faceRepPatchIndices, bool const* faceSide) = 0;
119 
126 
136  DLL_IMPORT_OR_EXPORT class StratigraphicUnitInterpretation* getStratiUnitInterp(unsigned int regionIndex) const;
137 
145  DLL_IMPORT_OR_EXPORT virtual unsigned int getRegionCount() const = 0;
146 
158  DLL_IMPORT_OR_EXPORT virtual unsigned int getInternalShellCount(unsigned int regionIndex) const = 0;
159 
171  DLL_IMPORT_OR_EXPORT virtual unsigned int getFaceCountOfExternalShell(unsigned int regionIndex) const = 0;
172 
187  DLL_IMPORT_OR_EXPORT virtual unsigned int getFaceCountOfInternalShell(unsigned int regionIndex, unsigned int internalShellIndex) const = 0;
188 
203  DLL_IMPORT_OR_EXPORT virtual RESQML2_NS::AbstractRepresentation* getRepOfExternalShellFace(unsigned int regionIndex, unsigned int faceIndex) const = 0;
204 
224  DLL_IMPORT_OR_EXPORT virtual RESQML2_NS::AbstractRepresentation* getRepOfInternalShellFace(unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const = 0;
225 
241  DLL_IMPORT_OR_EXPORT virtual unsigned int getRepPatchIndexOfExternalShellFace(unsigned int regionIndex, unsigned int faceIndex) const = 0;
242 
263  DLL_IMPORT_OR_EXPORT virtual unsigned int getRepPatchIndexOfInternalShellFace(unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const = 0;
264 
279  DLL_IMPORT_OR_EXPORT virtual bool getSideFlagOfExternalShellFace(unsigned int regionIndex, unsigned int faceIndex) const = 0;
280 
299  DLL_IMPORT_OR_EXPORT virtual bool getSideFlagOfInternalShellFace(unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const = 0;
300 
302  DLL_IMPORT_OR_EXPORT static const char* XML_TAG;
303 
304  DLL_IMPORT_OR_EXPORT virtual std::string getXmlTag() const final { return XML_TAG; }
305 
306  protected:
307 
315  DLL_IMPORT_OR_EXPORT SealedVolumeFrameworkRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) : RepresentationSetRepresentation(partialObject) {}
316 
320  SealedVolumeFrameworkRepresentation() {}
321 
327  SealedVolumeFrameworkRepresentation(gsoap_resqml2_0_1::_resqml20__SealedVolumeFrameworkRepresentation* fromGsoap) : RepresentationSetRepresentation(fromGsoap) {}
328 
334  SealedVolumeFrameworkRepresentation(gsoap_eml2_3::_resqml22__SealedVolumeFrameworkRepresentation* fromGsoap) : RepresentationSetRepresentation(fromGsoap) {}
335 
336  virtual COMMON_NS::DataObjectReference getSealedStructuralFrameworkDor() const = 0;
337 
338  virtual COMMON_NS::DataObjectReference getStratiUnitInterpDor(unsigned int regionIndex) const = 0;
339 
341  void loadTargetRelationships() final;
342 
348  virtual void setXmlSealedSurfaceFramework(class SealedSurfaceFrameworkRepresentation* ssf) = 0;
349 
356  virtual void setXmlInterpretationOfVolumeRegion(unsigned int regionIndex, class StratigraphicUnitInterpretation * stratiUnitInterp) = 0;
357  };
358 }
Proxy class for a representation set representation. This is the parent class of the framework repres...
Definition: RepresentationSetRepresentation.h:39
A collection of contact, which are a list of contact patches and their identities....
Definition: SealedSurfaceFrameworkRepresentation.h:31
A strict boundary representation (BREP), which represents the volume region by assembling together sh...
Definition: SealedVolumeFrameworkRepresentation.h:37
virtual bool getSideFlagOfInternalShellFace(unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const =0
virtual std::string getXmlTag() const final
Definition: SealedVolumeFrameworkRepresentation.h:304
virtual unsigned int getInternalShellCount(unsigned int regionIndex) const =0
virtual unsigned int getFaceCountOfInternalShell(unsigned int regionIndex, unsigned int internalShellIndex) const =0
class StratigraphicUnitInterpretation * getStratiUnitInterp(unsigned int regionIndex) const
virtual unsigned int getFaceCountOfExternalShell(unsigned int regionIndex) const =0
virtual void pushBackInternalShell(unsigned int regionIndex, unsigned int internalShellFaceCount, unsigned int const *faceRepresentationIndices, unsigned int const *faceRepPatchIndices, bool const *faceSide)=0
virtual void pushBackVolumeRegion(StratigraphicUnitInterpretation *stratiUnitInterp, unsigned int externalShellFaceCount, unsigned int const *faceRepresentationIndices, unsigned int const *faceRepPatchIndices, bool const *faceSide)=0
void setSealedSurfaceFramework(SealedSurfaceFrameworkRepresentation *ssf)
SealedSurfaceFrameworkRepresentation * getSealedStructuralFramework() const
virtual unsigned int getRegionCount() const =0
virtual resqml2::AbstractRepresentation * getRepOfExternalShellFace(unsigned int regionIndex, unsigned int faceIndex) const =0
static const char * XML_TAG
Definition: SealedVolumeFrameworkRepresentation.h:302
void setInterpretationOfVolumeRegion(unsigned int regionIndex, StratigraphicUnitInterpretation *stratiUnitInterp)
virtual unsigned int getRepPatchIndexOfInternalShellFace(unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const =0
virtual bool getSideFlagOfExternalShellFace(unsigned int regionIndex, unsigned int faceIndex) const =0
virtual resqml2::AbstractRepresentation * getRepOfInternalShellFace(unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const =0
virtual unsigned int getRepPatchIndexOfExternalShellFace(unsigned int regionIndex, unsigned int faceIndex) const =0
The interpretation of a stratigraphic unit.
Definition: StratigraphicUnitInterpretation.h:27