OpendTect  6.6
emsurfacetr.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: Kristofer Tingdahl
8  Date: 4-11-2002
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 
13 -*/
14 
15 #include "earthmodelmod.h"
16 #include "transl.h"
17 #include "emsurfaceiodata.h"
18 #include "uistring.h"
19 
20 class Executor;
21 class IOObj;
22 
23 namespace EM
24 {
25  class dgbSurfaceReader;
26  class FaultStickSet;
27  class Fault3D;
28  class FaultSet3D;
29  class Horizon;
30  class Horizon2D;
31  class Horizon3D;
32  class Surface;
33 }
34 
41 
42 
50 public:
52 
53  const char* defExtension() const { return "hor"; }
54 };
55 
56 
63 public:
65 
66  const char* defExtension() const { return "2dh"; }
67 };
68 
69 
76 public:
78 };
79 
80 
87 public:
89 
90  const char* defExtension() const { return "flt"; }
91 };
92 
93 
100 public:
102 };
103 
104 
111 public:
113 
114  const char* defExtension() const { return "fss"; }
115 };
116 
117 
123 {
124 public:
125  EMSurfaceTranslator(const char* nm,
126  const char* unm)
127  : Translator(nm,unm)
128  , ioobj_(0)
129  , surface_(0)
130  , sels_(sd_) {}
131 
133 
134  bool startRead(const IOObj&);
135  bool startWrite(const EM::Surface&);
136 
138 
139  virtual Executor* reader(EM::Surface&) { return 0; }
141  Executor* writer(const IOObj&,bool fullimplremove=true);
144  { return 0; }
145  virtual Executor* getAuxdataWriter(const EM::Surface&,int,
146  bool overwt=false)
147  { return 0; }
148 
149  uiString errMsg() const { return errmsg_; }
150 
151  virtual bool implRemove(const IOObj*) const;
152  virtual bool implRename(const IOObj*,const char*,
153  const CallBack* cb=0) const;
154  virtual bool implSetReadOnly(const IOObj*,bool) const;
155 
156  static bool getBinarySetting();
157 
158  void setCreatedFrom( const char* src )
159  { crfrom_ = src; }
160 
161 protected:
162 
169 
170  virtual bool prepRead() { return true; }
171  virtual bool prepWrite() { return true; }
172  virtual Executor* getWriter() { return 0; }
173 
174  void init(const EM::Surface*,const IOObj*);
175  void setIOObj(const IOObj*);
176 };
177 
178 
184 {
185 public:
186  dgbEMSurfaceTranslator(const char*,const char*);
188 
190 
191 protected:
192 
193  static BufferString createHOVName(const char* base,int idx);
196 
197  bool prepRead();
199 
200  virtual bool readOnlyZ() const { return true; }
201  virtual bool writeOnlyZ() const { return true; }
202  virtual bool hasRangeSelection() const { return true; }
203 
205 };
206 
207 
214 public:
215  dgbEMHorizon3DTranslator(const char* unm,
216  const char* nm)
217  : dgbEMSurfaceTranslator(unm,nm) {}
220  virtual Executor* getAuxdataWriter(const EM::Surface&,int,
221  bool ovwrt=false);
222 
223 
224 protected:
225  virtual bool readOnlyZ() const { return true; }
226  virtual bool writeOnlyZ() const { return true; }
227  virtual bool hasRangeSelection() const { return true; }
228 };
229 
230 
237 public:
238  dgbEMHorizon2DTranslator(const char* unm,
239  const char* nm)
240  : dgbEMSurfaceTranslator(unm,nm) {}
242 
243 protected:
244  virtual bool readOnlyZ() const {return false;}
245  virtual bool writeOnlyZ() const {return true;}
246  virtual bool hasRangeSelection() const {return false;}
247 };
248 
249 
256 public:
257  dgbEMFault3DTranslator(const char* unm,
258  const char* nm)
259  : dgbEMSurfaceTranslator(unm,nm) {}
261 
262 protected:
263  virtual bool readOnlyZ() const { return false;}
264  virtual bool writeOnlyZ() const { return false;}
265  virtual bool hasRangeSelection() const { return false;}
266 };
267 
268 
276 public:
277  dgbEMFaultStickSetTranslator(const char* unm,
278  const char* nm)
279  : dgbEMSurfaceTranslator(unm,nm) {}
281 
282 protected:
283  virtual bool readOnlyZ() const { return false;}
284  virtual bool writeOnlyZ() const { return false;}
285  virtual bool hasRangeSelection() const { return false;}
286 };
287 
288 
294 {
295 public:
296  EMFaultSet3DTranslator(const char* unm,
297  const char* nm)
298  : Translator(unm,nm) {}
300 
301  virtual Executor* writer(const EM::FaultSet3D&,const IOObj&) = 0;
302  virtual Executor* reader(EM::FaultSet3D&,const IOObj&) = 0;
303 };
304 
305 
308 public:
309  dgbEMFaultSet3DTranslator(const char* unm,
310  const char* nm)
311  : EMFaultSet3DTranslator(unm,nm) {}
313 
314  virtual Executor* writer(const EM::FaultSet3D&,const IOObj&);
315  virtual Executor* reader(EM::FaultSet3D&,const IOObj&);
316 
317 };
318 
319 
EMFaultStickSetTranslatorGroup
TranslatorGroup for EM::FaultStickSet.
Definition: emsurfacetr.h:110
dgbEMHorizon3DTranslator
dgbEMSurfaceTranslator for EM::Horizon3D.
Definition: emsurfacetr.h:213
dgbEMFaultStickSetTranslator
dgbEMSurfaceTranslator for EM::FaultStickSet.
Definition: emsurfacetr.h:275
EMFaultSet3DTranslator::reader
virtual Executor * reader(EM::FaultSet3D &, const IOObj &)=0
dgbEMSurfaceTranslator::setSurfaceTransform
bool setSurfaceTransform(const IOPar &)
EMSurfaceTranslator::sd_
EM::SurfaceIOData sd_
Definition: emsurfacetr.h:166
dgbEMHorizon3DTranslator::readOnlyZ
virtual bool readOnlyZ() const
Definition: emsurfacetr.h:225
sKey::Surface
FixedString Surface()
Definition: keystrs.h:154
dgbEMSurfaceTranslator::writeOnlyZ
virtual bool writeOnlyZ() const
Definition: emsurfacetr.h:201
dgbEMFault3DTranslator::~dgbEMFault3DTranslator
virtual ~dgbEMFault3DTranslator()
Definition: emsurfacetr.h:260
uistring.h
dgbEMSurfaceTranslator::reader_
EM::dgbSurfaceReader * reader_
Definition: emsurfacetr.h:204
dgbEMSurfaceTranslator::getSels
void getSels(StepInterval< int > &, StepInterval< int > &)
EMSurfaceTranslator::prepWrite
virtual bool prepWrite()
Definition: emsurfacetr.h:171
dgbEMHorizon3DTranslator::~dgbEMHorizon3DTranslator
virtual ~dgbEMHorizon3DTranslator()
Definition: emsurfacetr.h:218
dgbEMFaultStickSetTranslator::writeOnlyZ
virtual bool writeOnlyZ() const
Definition: emsurfacetr.h:284
EM::SurfaceIOData
Data interesting for Surface I/O.
Definition: emsurfaceiodata.h:30
dgbEMFault3DTranslator::writeOnlyZ
virtual bool writeOnlyZ() const
Definition: emsurfacetr.h:264
dgbEMFaultSet3DTranslator::isTranslator
isTranslator(dgb, EMFaultSet3D) public
Definition: emsurfacetr.h:307
dgbEMSurfaceTranslator
dgb EMSurfaceTranslator
Definition: emsurfacetr.h:184
dgbEMHorizon2DTranslator::~dgbEMHorizon2DTranslator
virtual ~dgbEMHorizon2DTranslator()
Definition: emsurfacetr.h:241
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
EMSurfaceTranslator::~EMSurfaceTranslator
virtual ~EMSurfaceTranslator()
dgbEMSurfaceTranslator::reader
virtual Executor * reader(EM::Surface &)
EMFault3DTranslatorGroup::mDefEmptyTranslatorGroupConstructor
mDefEmptyTranslatorGroupConstructor(EMFault3D) const char *defExtension() const
Definition: emsurfacetr.h:88
dgbEMHorizon2DTranslator::writeOnlyZ
virtual bool writeOnlyZ() const
Definition: emsurfacetr.h:245
EMFaultSet3DTranslator::writer
virtual Executor * writer(const EM::FaultSet3D &, const IOObj &)=0
dgbEMSurfaceTranslator::readOnlyZ
virtual bool readOnlyZ() const
Definition: emsurfacetr.h:200
dgbEMFaultStickSetTranslator::readOnlyZ
virtual bool readOnlyZ() const
Definition: emsurfacetr.h:283
sKey::Horizon
FixedString Horizon()
Definition: keystrs.h:77
dgbEMHorizon2DTranslator
dgbEMSurfaceTranslator for EM::Horizon2D.
Definition: emsurfacetr.h:236
EMSurfaceTranslator::implRename
virtual bool implRename(const IOObj *, const char *, const CallBack *cb=0) const
EM
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: bulk2dhorizonscanner.h:26
EMSurfaceTranslator::getAuxdataWriter
virtual Executor * getAuxdataWriter(const EM::Surface &, int, bool overwt=false)
Definition: emsurfacetr.h:145
EM::dgbSurfaceReader
Surface Reader.
Definition: emsurfaceio.h:46
dgbEMSurfaceTranslator::~dgbEMSurfaceTranslator
virtual ~dgbEMSurfaceTranslator()
EM::Surface
Base class for surfaces like horizons and faults. A surface is made up of one or more segments or pat...
Definition: emsurface.h:33
isTranslatorGroup
#define isTranslatorGroup(clss)
Definition: transl.h:220
dgbEMFaultStickSetTranslator::hasRangeSelection
virtual bool hasRangeSelection() const
Definition: emsurfacetr.h:285
dgbEMFaultSet3DTranslator::writer
virtual Executor * writer(const EM::FaultSet3D &, const IOObj &)
EMSurfaceTranslator::startWrite
bool startWrite(const EM::Surface &)
EMFault3DTranslatorGroup::isTranslatorGroup
isTranslatorGroup(EMFault3D)
StepInterval< int >
EMFaultSet3D
EM::FaultSet3D EMFaultSet3D
Definition: emsurfacetr.h:39
CallBack
CallBacks object-oriented (object + method).
Definition: callback.h:62
EMFaultSet3DTranslatorGroup::isTranslatorGroup
isTranslatorGroup(EMFaultSet3D)
EMHorizon2D
EM::Horizon2D EMHorizon2D
Definition: emsurfacetr.h:36
EM::SurfaceIODataSelection
Surface I/O data selection.
Definition: emsurfaceiodata.h:62
dgbEMFaultSet3DTranslator::reader
virtual Executor * reader(EM::FaultSet3D &, const IOObj &)
EMSurfaceTranslator::getBinarySetting
static bool getBinarySetting()
EMSurfaceTranslator::setIOObj
void setIOObj(const IOObj *)
EM::Horizon
Horizon Surface.
Definition: emhorizon.h:47
EMFaultSet3DTranslator::~EMFaultSet3DTranslator
virtual ~EMFaultSet3DTranslator()
Definition: emsurfacetr.h:299
EM::Horizon2D
2D Horizon. The Horizon is only present along 2d lines, set by addLine. Each position's subid is form...
Definition: emhorizon2d.h:108
dgbEMSurfaceTranslator::prepRead
bool prepRead()
EMAnyHorizonTranslatorGroup
TranslatorGroup for EM::Horizon.
Definition: emsurfacetr.h:75
dgbEMHorizon2DTranslator::hasRangeSelection
virtual bool hasRangeSelection() const
Definition: emsurfacetr.h:246
dgbEMFault3DTranslator::isTranslator
isTranslator(dgb, EMFault3D) public
Definition: emsurfacetr.h:255
EMFault3DTranslatorGroup
TranslatorGroup for EM::Fault3D.
Definition: emsurfacetr.h:86
EMFaultSet3DTranslatorGroup
TranslatorGroup for EM::FaultSet3D.
Definition: emsurfacetr.h:99
Executor
Specification to enable chunkwise execution of a process.
Definition: executor.h:39
mDefEmptyTranslatorGroupConstructor
#define mDefEmptyTranslatorGroupConstructor(clss)
Definition: transl.h:269
sKey::Horizon2D
FixedString Horizon2D()
Definition: keystrs.h:78
EMSurfaceTranslator::writer
Executor * writer(const IOObj &, bool fullimplremove=true)
dgbEMHorizon3DTranslator::getAuxdataReader
virtual Executor * getAuxdataReader(EM::Surface &, int)
EMSurfaceTranslator::reader
virtual Executor * reader(EM::Surface &)
Definition: emsurfacetr.h:139
EMSurfaceTranslator::prepRead
virtual bool prepRead()
Definition: emsurfacetr.h:170
dgbEMHorizon3DTranslator::getAuxdataWriter
virtual Executor * getAuxdataWriter(const EM::Surface &, int, bool ovwrt=false)
IOObj
Definition: ioobj.h:58
EMSurfaceTranslator::implRemove
virtual bool implRemove(const IOObj *) const
EMSurfaceTranslator::implSetReadOnly
virtual bool implSetReadOnly(const IOObj *, bool) const
emsurfaceiodata.h
TranslatorGroup
Group of Translators. Has a static factory.
Definition: transl.h:56
dgbEMFault3DTranslator::readOnlyZ
virtual bool readOnlyZ() const
Definition: emsurfacetr.h:263
EMSurfaceTranslator::errmsg_
uiString errmsg_
Definition: emsurfacetr.h:165
dgbEMHorizon2DTranslator::readOnlyZ
virtual bool readOnlyZ() const
Definition: emsurfacetr.h:244
EMSurfaceTranslator::init
void init(const EM::Surface *, const IOObj *)
EMFaultSet3DTranslator::EMFaultSet3DTranslator
EMFaultSet3DTranslator(const char *unm, const char *nm)
Definition: emsurfacetr.h:296
EMHorizon3DTranslatorGroup
TranslatorGroup for EM::Horizon3D. Reads/writes 3D EM::Horizon3D to storage.
Definition: emsurfacetr.h:49
EMSurfaceTranslator::startRead
bool startRead(const IOObj &)
EMAnyHorizon
EM::Horizon EMAnyHorizon
Definition: emsurfacetr.h:37
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
EMSurfaceTranslator::sels_
EM::SurfaceIODataSelection sels_
Definition: emsurfacetr.h:167
dgbEMSurfaceTranslator::hasRangeSelection
virtual bool hasRangeSelection() const
Definition: emsurfacetr.h:202
EMSurfaceTranslator::getWriter
virtual Executor * getWriter()
Definition: emsurfacetr.h:172
EMSurfaceTranslator::setCreatedFrom
void setCreatedFrom(const char *src)
Definition: emsurfacetr.h:158
EMFaultStickSet
EM::FaultStickSet EMFaultStickSet
Definition: emsurfacetr.h:40
dgbEMSurfaceTranslator::getWriter
Executor * getWriter()
uiString
String that is able to hold international (UTF-8) strings for the user interface.
Definition: uistring.h:121
EMSurfaceTranslator::crfrom_
BufferString crfrom_
Definition: emsurfacetr.h:168
EMFaultStickSetTranslatorGroup::isTranslatorGroup
isTranslatorGroup(EMFaultStickSet)
EMSurfaceTranslator::errMsg
uiString errMsg() const
Definition: emsurfacetr.h:149
MPE::errmsg_
BufferString errmsg_
Definition: horizontracker.h:118
EMSurfaceTranslator::EMSurfaceTranslator
EMSurfaceTranslator(const char *nm, const char *unm)
Definition: emsurfacetr.h:125
dgbEMHorizon2DTranslator::isTranslator
isTranslator(dgb, EMHorizon2D) public
Definition: emsurfacetr.h:236
EMHorizon3D
EM::Horizon3D EMHorizon3D
Definition: emsurfacetr.h:35
EMSurfaceTranslator::surface_
EM::Surface * surface_
Definition: emsurfacetr.h:164
EMFaultStickSetTranslatorGroup::mDefEmptyTranslatorGroupConstructor
mDefEmptyTranslatorGroupConstructor(EMFaultStickSet) const char *defExtension() const
Definition: emsurfacetr.h:112
dgbEMFaultStickSetTranslator::isTranslator
isTranslator(dgb, EMFaultStickSet) public
Definition: emsurfacetr.h:275
EM::FaultStickSet
Fault stick set.
Definition: emfaultstickset.h:100
dgbEMHorizon3DTranslator::isTranslator
isTranslator(dgb, EMHorizon3D) public
Definition: emsurfacetr.h:213
Translator
I/O Interpreter class for a certain object type.
Definition: transl.h:123
dgbEMHorizon3DTranslator::hasRangeSelection
virtual bool hasRangeSelection() const
Definition: emsurfacetr.h:227
transl.h
EMSurfaceTranslator::ioobj_
IOObj * ioobj_
Definition: emsurfacetr.h:163
EMSurfaceTranslator
Translator for EM::Surface.
Definition: emsurfacetr.h:123
dgbEMFaultSet3DTranslator
Definition: emsurfacetr.h:307
EMHorizon2DTranslatorGroup
TranslatorGroup for EM::Horizon2D.
Definition: emsurfacetr.h:62
EMSurfaceTranslator::selections
EM::SurfaceIODataSelection & selections()
Definition: emsurfacetr.h:137
EM::Fault3D
3D Fault
Definition: emfault3d.h:78
EMFault3D
EM::Fault3D EMFault3D
Definition: emsurfacetr.h:38
dgbEMFaultSet3DTranslator::~dgbEMFaultSet3DTranslator
virtual ~dgbEMFaultSet3DTranslator()
Definition: emsurfacetr.h:312
dgbEMSurfaceTranslator::dgbEMSurfaceTranslator
dgbEMSurfaceTranslator(const char *, const char *)
EM::FaultSet3D
3D FaultSet
Definition: emfaultset3d.h:27
dgbEMFaultStickSetTranslator::~dgbEMFaultStickSetTranslator
virtual ~dgbEMFaultStickSetTranslator()
Definition: emsurfacetr.h:280
dgbEMHorizon3DTranslator::writeOnlyZ
virtual bool writeOnlyZ() const
Definition: emsurfacetr.h:226
EMSurfaceTranslator::getAuxdataReader
virtual Executor * getAuxdataReader(EM::Surface &, int)
Definition: emsurfacetr.h:143
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
EM::Horizon3D
3D Horizon. A Horizon is made up of one or more grids (so they can overlap at faults)....
Definition: emhorizon3d.h:96
EMFaultSet3DTranslator
Translator for EM::FaultSet3D.
Definition: emsurfacetr.h:294
dgbEMFault3DTranslator::hasRangeSelection
virtual bool hasRangeSelection() const
Definition: emsurfacetr.h:265
dgbEMSurfaceTranslator::createHOVName
static BufferString createHOVName(const char *base, int idx)
dgbEMFault3DTranslator
dgbEMSurfaceTranslator for EM::Fault3D.
Definition: emsurfacetr.h:255

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