Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
StratigraphicColumnRankInterpretation.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 "AbstractStratigraphicOrganizationInterpretation.h"
22 
23 namespace RESQML2_NS
24 {
25  class HorizonInterpretation;
26  class StratigraphicColumn;
27  class StratigraphicOccurrenceInterpretation;
28 }
29 
30 namespace RESQML2_NS
31 {
32  class StratigraphicUnitInterpretation;
33 
39  {
40  public:
41 
44 
54  DLL_IMPORT_OR_EXPORT virtual void pushBackStratiUnitInterpretation(StratigraphicUnitInterpretation * stratiUnitInterpretation) = 0;
55 
65  DLL_IMPORT_OR_EXPORT virtual void setHorizonOfLastContact(HorizonInterpretation * partOf) = 0;
66 
83  DLL_IMPORT_OR_EXPORT virtual void pushBackStratigraphicBinaryContact(StratigraphicUnitInterpretation* subject, gsoap_eml2_3::resqml22__ContactMode subjectContactMode,
84  StratigraphicUnitInterpretation* directObject, gsoap_eml2_3::resqml22__ContactMode directObjectMode,
85  HorizonInterpretation * partOf = nullptr) = 0;
86 
94  DLL_IMPORT_OR_EXPORT virtual bool isAChronoStratiRank() const = 0;
95 
101  DLL_IMPORT_OR_EXPORT virtual unsigned int getContactCount() const = 0;
102 
116  DLL_IMPORT_OR_EXPORT virtual gsoap_eml2_3::resqml22__ContactMode getSubjectContactModeOfContact(unsigned int contactIndex) const = 0;
117 
128  DLL_IMPORT_OR_EXPORT virtual class StratigraphicUnitInterpretation* getSubjectOfContact(unsigned int contactIndex) const = 0;
129 
142  DLL_IMPORT_OR_EXPORT virtual gsoap_eml2_3::resqml22__ContactMode getDirectObjectContactModeOfContact(unsigned int contactIndex) const = 0;
143 
154  DLL_IMPORT_OR_EXPORT virtual StratigraphicUnitInterpretation* getDirectObjectOfContact(unsigned int contactIndex) const = 0;
155 
167  DLL_IMPORT_OR_EXPORT virtual HorizonInterpretation* getHorizonInterpretationOfContact(unsigned int contactIndex) const = 0;
168 
176  DLL_IMPORT_OR_EXPORT virtual unsigned int getStratigraphicUnitInterpretationCount() const = 0;
177 
190  DLL_IMPORT_OR_EXPORT virtual COMMON_NS::DataObjectReference getStratigraphicUnitInterpretationDor(unsigned int index) const = 0;
191 
199  DLL_IMPORT_OR_EXPORT std::vector<StratigraphicUnitInterpretation *> getStratigraphicUnitInterpretationSet() const;
200 
202 
203 
210  DLL_IMPORT_OR_EXPORT virtual unsigned int getHorizonInterpretationCount() const = 0;
211 
222  DLL_IMPORT_OR_EXPORT virtual COMMON_NS::DataObjectReference getHorizonInterpretationDor(unsigned int index) const = 0;
223 
233  DLL_IMPORT_OR_EXPORT HorizonInterpretation* getHorizonInterpretation(unsigned int index) const;
234 
242  DLL_IMPORT_OR_EXPORT std::vector<HorizonInterpretation *> getHorizonInterpretationSet() const;
243 
244  GETTER_DATAOBJECTS(StratigraphicColumn, StratigraphicColumn)
245 
247  DLL_IMPORT_OR_EXPORT static const char* XML_TAG;
248 
249  DLL_IMPORT_OR_EXPORT virtual std::string getXmlTag() const final { return XML_TAG; }
250 
251  protected :
252 
256  DLL_IMPORT_OR_EXPORT StratigraphicColumnRankInterpretation(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject) : AbstractStratigraphicOrganizationInterpretation(partialObject) {}
257 
261  StratigraphicColumnRankInterpretation() {}
262 
266  StratigraphicColumnRankInterpretation(gsoap_resqml2_0_1::_resqml20__StratigraphicColumnRankInterpretation* fromGsoap) : AbstractStratigraphicOrganizationInterpretation(fromGsoap) {}
267 
271  StratigraphicColumnRankInterpretation(gsoap_eml2_3::_resqml22__StratigraphicColumnRankInterpretation* fromGsoap) : AbstractStratigraphicOrganizationInterpretation(fromGsoap) {}
272 
274  void loadTargetRelationships();
275  };
276 }
An abstract stratigraphic organization interpretation is the main class that defines the relationship...
Definition: AbstractStratigraphicOrganizationInterpretation.h:37
An interpretation of a horizon, which optionally provides stratigraphic information.
Definition: HorizonInterpretation.h:27
A global interpretation of the stratigraphy, which can be made up of several ranks of stratigraphic u...
Definition: StratigraphicColumn.h:35
A stratigraphic column rank interpretation is a global hierarchy containing an ordered list of strati...
Definition: StratigraphicColumnRankInterpretation.h:39
virtual unsigned int getStratigraphicUnitInterpretationCount() const =0
virtual void pushBackStratiUnitInterpretation(StratigraphicUnitInterpretation *stratiUnitInterpretation)=0
virtual class StratigraphicUnitInterpretation * getSubjectOfContact(unsigned int contactIndex) const =0
virtual HorizonInterpretation * getHorizonInterpretationOfContact(unsigned int contactIndex) const =0
virtual void pushBackStratigraphicBinaryContact(StratigraphicUnitInterpretation *subject, gsoap_eml2_3::resqml22__ContactMode subjectContactMode, StratigraphicUnitInterpretation *directObject, gsoap_eml2_3::resqml22__ContactMode directObjectMode, HorizonInterpretation *partOf=nullptr)=0
std::vector< StratigraphicUnitInterpretation * > getStratigraphicUnitInterpretationSet() const
virtual StratigraphicUnitInterpretation * getDirectObjectOfContact(unsigned int contactIndex) const =0
virtual unsigned int getContactCount() const =0
virtual common::DataObjectReference getStratigraphicUnitInterpretationDor(unsigned int index) const =0
virtual gsoap_eml2_3::resqml22__ContactMode getDirectObjectContactModeOfContact(unsigned int contactIndex) const =0
virtual gsoap_eml2_3::resqml22__ContactMode getSubjectContactModeOfContact(unsigned int contactIndex) const =0
virtual void setHorizonOfLastContact(HorizonInterpretation *partOf)=0
This class is a container for stratigraphic organizations described along a wellbore.
Definition: StratigraphicOccurrenceInterpretation.h:30
The interpretation of a stratigraphic unit.
Definition: StratigraphicUnitInterpretation.h:27