OpendTect  6.6
uiempartserv.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: A.H. Bril
8  Date: Sep 2002
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "uiearthmodelmod.h"
15 
16 #include "emposid.h"
17 #include "trckeysampling.h"
18 #include "multiid.h"
19 #include "position.h"
20 #include "uiapplserv.h"
21 #include "uistring.h"
22 #include "uibulk2dhorizonimp.h"
23 
24 
25 class BinIDValueSet;
26 class BufferStringSet;
27 class TrcKeyZSampling;
28 class DataPointSet;
29 class TrcKeySampling;
30 class SurfaceInfo;
31 class ZAxisTransform;
33 class uiBulkFaultImport;
34 class uiCreateHorizon;
35 class uiExportFault;
36 class uiExportHorizon;
37 class uiExport2DHorizon;
38 class uiImportFault3D;
40 class uiImportHorizon;
41 class uiImpHorFromZMap;
42 class uiSurfaceMan;
43 class uiVariogramDisplay;
44 
45 namespace EM { class EMObject; class EMManager; class SurfaceIODataSelection; }
46 namespace Pick { class Set; }
47 namespace PosInfo { class Line2DData; }
48 
49 template <class T> class Array2D;
50 
51 
58 public:
61 
62  const char* name() const { return "EarthModel"; }
63 
64  // Services
65  bool import3DHorGeom(bool bulk=false);
68  bool export3DHorizon(bool bulk=false);
69  bool export2DHorizon(bool bulk=false);
70  bool importFault();
74  bool importBulkFaultStickSet(bool is2d=false);
78  bool exportFault(bool single=false);
79  bool exportFaultStickSet(bool single=false);
81  void createHorWithConstZ(bool is2d);
82 
85 
87  const char* getType(const EM::ObjectID&) const;
90 
91  int nrAttributes(const EM::ObjectID&) const;
92  bool isGeometryChanged(const EM::ObjectID&) const;
93  bool isChanged(const EM::ObjectID&) const;
94  bool isEmpty(const EM::ObjectID&) const;
95  bool isFullResolution(const EM::ObjectID&) const;
96  bool isFullyLoaded(const EM::ObjectID&) const;
97 
98  void displayEMObject(const MultiID&);
99  bool fillHoles(const EM::ObjectID&,bool);
105  bool askUserToSave(const EM::ObjectID&,bool withcancl) const;
111  { return selectedrg_; }
124  int loadAuxData(const EM::ObjectID&,const char*,
125  bool removeold=true);
129  bool removeold=true);
130 
133  BufferString& auxdatanm,
134  const Array2D<float>& data);
135  void manageSurfaces(const char* typ);
141  void manageBodies();
142  bool loadSurface(const MultiID&,
143  const EM::SurfaceIODataSelection* s=0);
147  BinIDValueSet&,
148  const TrcKeySampling&) const;
150  const BufferStringSet& sellines,
155  const BufferStringSet& sellines,
158 
160  bool storeas=false) const;
161  bool storeObject(const EM::ObjectID&,bool storeas,
162  MultiID& storagekey,
163  float shift=0) const;
165  BufferString& auxdataname,
166  bool storeas=false) const;
168  DataPointSet&,const char* nm,int valnr,
169  float shift);
170  bool getAuxData(const EM::ObjectID&,int auxdatanr,
171  DataPointSet&, float& shift) const;
173  TypeSet<float>* shfs=0,
174  const TrcKeyZSampling* cs=0) const;
175  bool interpolateAuxData(const EM::ObjectID&,const char* nm,
176  DataPointSet& res);
177  bool filterAuxData(const EM::ObjectID&,const char* nm,
178  DataPointSet& res);
179  bool computeVariogramAuxData(const EM::ObjectID&,const char*,
180  DataPointSet&);
181  bool attr2Geom(const EM::ObjectID&,const char* nm,
182  const DataPointSet&);
183  bool geom2Attr(const EM::ObjectID&);
185 
186  const char* genRandLine(int opt);
187  bool dispLineOnCreation() { return disponcreation_; }
188 
189  void removeUndo();
190 
191  static int evDisplayHorizon();
192  static int evRemoveTreeObject();
193 
194  // Interaction stuff
195  const EM::ObjectID& selEMID() const { return selemid_; }
197 
199 
201  void fillPar(IOPar&) const;
202  bool usePar(const IOPar&);
203 
204 protected:
205  void cleanup();
206 
208  const char* type);
210  bool removeold=true);
211  bool changeAuxData(const EM::ObjectID&,const char* nm,
212  bool interp,DataPointSet& res);
215 
235 
238 
240 
241  static const char* sKeySectionID() { return "Section ID"; }
248 
250 };
251 
uiEMPartServer::storeFaultAuxData
bool storeFaultAuxData(const EM::ObjectID &id, BufferString &auxdatanm, const Array2D< float > &data)
uiEMPartServer::getStorageID
MultiID getStorageID(const EM::ObjectID &) const
uiEMPartServer::selectHorizons
void selectHorizons(ObjectSet< EM::EMObject > &, bool is2d)
Returned set is reffed and must be unrefed by caller.
uiEMPartServer::importBulk2DFaultStickset
void importBulk2DFaultStickset()
uiEMPartServer::getSurfaceDef3D
void getSurfaceDef3D(const TypeSet< EM::ObjectID > &, BinIDValueSet &, const TrcKeySampling &) const
uiEMPartServer::usePar
bool usePar(const IOPar &)
TrcKeySampling
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:35
emposid.h
uiEMPartServer::man3dfaultdlg_
uiSurfaceMan * man3dfaultdlg_
Definition: uiempartserv.h:244
uiEMPartServer::managePreLoad
void managePreLoad()
uiEMPartServer::getName
BufferString getName(const EM::ObjectID &) const
uiEMPartServer::getObjectID
EM::ObjectID getObjectID(const MultiID &) const
uiEMPartServer::impfltstickdlg_
uiImportFault3D * impfltstickdlg_
Definition: uiempartserv.h:225
Pick::Set
Set of picks with something in common.
Definition: pickset.h:34
uiEMPartServer::manfssdlg_
uiSurfaceMan * manfssdlg_
Definition: uiempartserv.h:245
uiExportFault
Dialog for horizon export.
Definition: uiexpfault.h:35
uistring.h
uiEMPartServer::name
const char * name() const
Definition: uiempartserv.h:62
ObjectSet< EM::EMObject >
BinIDValueSet
A Pos::IdxPairValueSet with BinIDs.
Definition: binidvalset.h:23
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
uibulk2dhorizonimp.h
uiEMPartServer::loadSurface
bool loadSurface(const MultiID &, const EM::SurfaceIODataSelection *s=0)
uiEMPartServer::setAuxData
int setAuxData(const EM::ObjectID &, DataPointSet &, const char *nm, int valnr, float shift)
uiEMPartServer::~uiEMPartServer
~uiEMPartServer()
uiSurfaceMan
Definition: uisurfaceman.h:25
uiEMPartServer::impbulkfltdlg_
uiBulkFaultImport * impbulkfltdlg_
Definition: uiempartserv.h:222
uiEMPartServer::manbodydlg_
uiSurfaceMan * manbodydlg_
Definition: uiempartserv.h:247
uiEMPartServer::fillPickSet
void fillPickSet(Pick::Set &, MultiID)
uiEMPartServer::createHorWithConstZ
void createHorWithConstZ(bool is2d)
Pick
Definition: picklocation.h:21
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
uiEMPartServer::impfltdlg_
uiImportFault3D * impfltdlg_
Definition: uiempartserv.h:224
uiEMPartServer::getAllAuxData
bool getAllAuxData(const EM::ObjectID &, DataPointSet &, TypeSet< float > *shfs=0, const TrcKeyZSampling *cs=0) const
uiEMPartServer::changeAuxData
bool changeAuxData(const EM::ObjectID &, const char *nm, bool interp, DataPointSet &res)
uiEMPartServer::getHorizonZAxisTransform
ZAxisTransform * getHorizonZAxisTransform(bool is2d)
uiEMPartServer::selEMID
const EM::ObjectID & selEMID() const
Definition: uiempartserv.h:195
uiEMPartServer::exportFaultSet
bool exportFaultSet()
uiEMPartServer::impbulkfssdlg_
uiBulkFaultImport * impbulkfssdlg_
Definition: uiempartserv.h:233
uiEMPartServer::imphorgeomdlg_
uiImportHorizon * imphorgeomdlg_
Definition: uiempartserv.h:219
uiEMPartServer::storeAuxData
bool storeAuxData(const EM::ObjectID &, BufferString &auxdataname, bool storeas=false) const
uiEMPartServer::manageBodies
void manageBodies()
uiEMPartServer::geom2Attr
bool geom2Attr(const EM::ObjectID &)
uiEMPartServer::selectFaults
void selectFaults(ObjectSet< EM::EMObject > &, bool is2d)
Returned set is reffed and must be unrefed by caller.
uiEMPartServer::man2dhordlg_
uiSurfaceMan * man2dhordlg_
Definition: uiempartserv.h:242
uiEMPartServer::getType
const char * getType(const EM::ObjectID &) const
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
uiEMPartServer::crhordlg_
uiCreateHorizon * crhordlg_
Definition: uiempartserv.h:232
uiEMPartServer::selectedrg_
TrcKeySampling selectedrg_
Definition: uiempartserv.h:236
uiExportHorizon
Dialog for horizon export.
Definition: uiexphorizon.h:30
uiEMPartServer::removeTreeObject
void removeTreeObject(const EM::ObjectID &)
uiApplPartServer
Makes available certain services that are needed on a higher level.
Definition: uiapplserv.h:48
EM
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: bulk2dhorizonscanner.h:26
uiEMPartServer::uiEMPartServer
uiEMPartServer(uiApplService &)
uiEMPartServer::evRemoveTreeObject
static int evRemoveTreeObject()
uiEMPartServer::interpolateAuxData
bool interpolateAuxData(const EM::ObjectID &, const char *nm, DataPointSet &res)
uiEMPartServer::mODTextTranslationClass
mODTextTranslationClass(uiEMPartServer)
uiEMPartServer::filterSurface
bool filterSurface(const EM::ObjectID &)
uiEMPartServer::importFaultSet
bool importFaultSet()
uiImportHorizon
Dialog for Horizon Import.
Definition: uiimphorizon.h:41
TrcKeyZSampling
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
uiEMPartServer::getSurfaceInfo
void getSurfaceInfo(ObjectSet< SurfaceInfo > &)
DataPointSet
Set of data points with group selection.
Definition: datapointset.h:48
multiid.h
uiEMPartServer::disponcreation_
bool disponcreation_
Definition: uiempartserv.h:237
uiImportFaultStickSet2D
Definition: uiimpfault.h:87
SurfaceInfo
Surface info name/attribname with an ID (usually the EM-ID).
Definition: surfaceinfo.h:21
ZAxisTransform
Base class for z-axis transforms.
Definition: zaxistransform.h:37
uiEMPartServer::manageFaultSets
void manageFaultSets()
uiEMPartServer::importReadyCB
void importReadyCB(CallBacker *)
uiEMPartServer::importHorFromZMap
bool importHorFromZMap()
uiEMPartServer::manage3DFaults
void manage3DFaults()
uiBulkFaultImport
Definition: uibulkfaultimp.h:19
uiEMPartServer::filterAuxData
bool filterAuxData(const EM::ObjectID &, const char *nm, DataPointSet &res)
EM::SurfaceIODataSelection
Surface I/O data selection.
Definition: emsurfaceiodata.h:62
uiEMPartServer::expfltsetdlg_
uiExportFault * expfltsetdlg_
Definition: uiempartserv.h:231
uiEMPartServer::importBulk2DHorizon
bool importBulk2DHorizon()
uiEMPartServer::importBulkFaultStickSet
bool importBulkFaultStickSet(bool is2d=false)
uiEMPartServer::manage2DHorizons
void manage2DHorizons()
uiEMPartServer::selemid_
EM::ObjectID selemid_
Definition: uiempartserv.h:216
uiEMPartServer::export2DHorizon
bool export2DHorizon(bool bulk=false)
uiEMPartServer::impzmapdlg_
uiImpHorFromZMap * impzmapdlg_
Definition: uiempartserv.h:221
uiapplserv.h
uiEMPartServer::getUiName
uiString getUiName(const EM::ObjectID &) const
uiEMPartServer::evDisplayHorizon
static int evDisplayHorizon()
uiEMPartServer::manfltsetdlg_
uiSurfaceMan * manfltsetdlg_
Definition: uiempartserv.h:246
uiEMPartServer::displayEMObject
void displayEMObject(const MultiID &)
uiEMPartServer::impfltsetdlg_
uiBulkFaultImport * impfltsetdlg_
Definition: uiempartserv.h:223
uiEMPartServer::isFullResolution
bool isFullResolution(const EM::ObjectID &) const
uiBulk2DHorizonImport
Definition: uibulk2dhorizonimp.h:21
uiEMPartServer::showLoadAuxDataDlg
bool showLoadAuxDataDlg(const EM::ObjectID &)
uiEMPartServer::selectFaultStickSets
void selectFaultStickSets(ObjectSet< EM::EMObject > &)
Returned set is reffed and must be unrefed by caller.
uiEMPartServer::loadAuxData
bool loadAuxData(const EM::ObjectID &, const BufferStringSet &, bool removeold=true)
uiApplService
Services from application level to 'Part servers'.
Definition: uiapplserv.h:24
uiEMPartServer::man3dhordlg_
uiSurfaceMan * man3dhordlg_
Definition: uiempartserv.h:243
uiCreateHorizon
Dialog to create a horizon with a constant Z.
Definition: uicreatehorizon.h:26
uiEMPartServer::importBulkFaults
bool importBulkFaults()
uiEMPartServer::survChangedCB
void survChangedCB(CallBacker *)
uiEMPartServer::variodlgs_
ObjectSet< uiVariogramDisplay > variodlgs_
Definition: uiempartserv.h:239
position.h
uiVariogramDisplay
Definition: uivariogram.h:45
uiEMPartServer::impbulk2dhordlg_
uiBulk2DHorizonImport * impbulk2dhordlg_
Definition: uiempartserv.h:234
uiEMPartServer::selectBodies
void selectBodies(ObjectSet< EM::EMObject > &)
Returned set is reffed and must be unrefed by caller.
uiEMPartServer::askUserToSave
bool askUserToSave(const EM::ObjectID &, bool withcancl) const
uiEMPartServer::dispLineOnCreation
bool dispLineOnCreation()
Definition: uiempartserv.h:187
MultiID
Compound key consisting of ints.
Definition: multiid.h:24
uiEMPartServer::horizon3DDisplayRange
TrcKeySampling horizon3DDisplayRange() const
Definition: uiempartserv.h:110
uiEMPartServer::getAuxData
bool getAuxData(const EM::ObjectID &, int auxdatanr, DataPointSet &, float &shift) const
uiEMPartServer::getAllSurfaceInfo
static void getAllSurfaceInfo(ObjectSet< SurfaceInfo > &, bool)
uiEMPartServer::setHorizon3DDisplayRange
void setHorizon3DDisplayRange(const TrcKeySampling &)
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
uiEMPartServer::importFault
bool importFault()
uiEMPartServer::exportFault
bool exportFault(bool single=false)
uiEMPartServer::sKeySectionID
static const char * sKeySectionID()
Definition: uiempartserv.h:241
uiEMPartServer::export3DHorizon
bool export3DHorizon(bool bulk=false)
uiEMPartServer::attr2Geom
bool attr2Geom(const EM::ObjectID &, const char *nm, const DataPointSet &)
uiEMPartServer::exp2dhordlg_
uiExport2DHorizon * exp2dhordlg_
Definition: uiempartserv.h:228
uiEMPartServer::computeVariogramAuxData
bool computeVariogramAuxData(const EM::ObjectID &, const char *, DataPointSet &)
uiImportFault3D
Definition: uiimpfault.h:76
uiEMPartServer::fillHoles
bool fillHoles(const EM::ObjectID &, bool)
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
EM::ObjectID
od_int32 ObjectID
Definition: emposid.h:23
PosInfo
Position info, often segmented.
Definition: posinfo.h:40
uiEMPartServer::isGeometryChanged
bool isGeometryChanged(const EM::ObjectID &) const
uiEMPartServer::em_
EM::EMManager & em_
Definition: uiempartserv.h:217
uiEMPartServer::imphorattrdlg_
uiImportHorizon * imphorattrdlg_
Definition: uiempartserv.h:218
EM::EMManager
Manages the loaded/half loaded EM objects in OpendTect.
Definition: emmanager.h:46
uiEMPartServer::getUiType
uiString getUiType(const EM::ObjectID &) const
uiEMPartServer::showLoadFaultAuxDataDlg
bool showLoadFaultAuxDataDlg(const EM::ObjectID &)
uiBulkHorizonImport
Definition: uibulkhorizonimp.h:18
uiEMPartServer::import3DHorAttr
bool import3DHorAttr()
uiEMPartServer::manage3DHorizons
void manage3DHorizons()
uiEMPartServer::importFaultStickSet
bool importFaultStickSet()
uiEMPartServer::expfltdlg_
uiExportFault * expfltdlg_
Definition: uiempartserv.h:229
uiEMPartServer::cleanup
void cleanup()
uiEMPartServer::fillPar
void fillPar(IOPar &) const
uiEMPartServer::selectSurfaces
void selectSurfaces(ObjectSet< EM::EMObject > &, const char *type)
uiEMPartServer::isFullyLoaded
bool isFullyLoaded(const EM::ObjectID &) const
uiEMPartServer::loadAuxData
bool loadAuxData(const EM::ObjectID &, const TypeSet< int > &, bool removeold=true)
uiEMPartServer::expfltstickdlg_
uiExportFault * expfltstickdlg_
Definition: uiempartserv.h:230
uiEMPartServer::exportFaultStickSet
bool exportFaultStickSet(bool single=false)
uiEMPartServer::nrAttributes
int nrAttributes(const EM::ObjectID &) const
trckeysampling.h
uiEMPartServer::isEmpty
bool isEmpty(const EM::ObjectID &) const
uiEMPartServer::storeObject
bool storeObject(const EM::ObjectID &, bool storeas, MultiID &storagekey, float shift=0) const
EM::EMObject
Base class for all EarthModel objects.
Definition: emobject.h:159
uiEMPartServer::getSurfaceDef2D
mDeprecatedDef void getSurfaceDef2D(const ObjectSet< MultiID > &, const BufferStringSet &sellines, TypeSet< Coord > &, TypeSet< Interval< float > > &)
uiEMPartServer::import2DFaultStickset
void import2DFaultStickset()
uiEMPartServer
Earth Model UI Part Server.
Definition: uiempartserv.h:57
uiEMPartServer::impfss2ddlg_
uiImportFaultStickSet2D * impfss2ddlg_
Definition: uiempartserv.h:226
uiEMPartServer::removeUndo
void removeUndo()
mDeprecatedDef
#define mDeprecatedDef
Definition: plfdefs.h:216
uiImpHorFromZMap
Definition: uiimphorizon.h:96
Interval< float >
uiEMPartServer::isChanged
bool isChanged(const EM::ObjectID &) const
uiEMPartServer::deriveHor3DFrom2D
void deriveHor3DFrom2D(const EM::ObjectID &)
uiEMPartServer::exphordlg_
uiExportHorizon * exphordlg_
Definition: uiempartserv.h:227
uiEMPartServer::manageSurfaces
void manageSurfaces(const char *typ)
uiEMPartServer::displayOnCreateCB
void displayOnCreateCB(CallBacker *)
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
uiEMPartServer::impbulkhordlg_
uiBulkHorizonImport * impbulkhordlg_
Definition: uiempartserv.h:220
Array2D
Array2D ( Subclass of ArrayND ) is a two dimensional array.
Definition: arraynd.h:140
uiEMPartServer::genRandLine
const char * genRandLine(int opt)
uiEMPartServer::storeObject
bool storeObject(const EM::ObjectID &, bool storeas=false) const
uiEMPartServer::selEMObject
EM::EMObject * selEMObject()
uiEMPartServer::import3DHorGeom
bool import3DHorGeom(bool bulk=false)
uiEMPartServer::getSurfaceDef2D
void getSurfaceDef2D(const ObjectSet< MultiID > &, const BufferStringSet &sellines, TypeSet< Coord > &, TypeSet< BinID > &, TypeSet< Interval< float > > &)
uiExport2DHorizon
Dialog for 2D horizon export.
Definition: uiexport2dhorizon.h:31
TypeSet< EM::ObjectID >
uiEMPartServer::manageFaultStickSets
void manageFaultStickSets()
uiEMPartServer::loadAuxData
int loadAuxData(const EM::ObjectID &, const char *, bool removeold=true)

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2021