OpendTect  6.3
sectionextender.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: 23-10-1996
9  Contents: Ranges
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "mpeenginemod.h"
15 
16 #include "emposid.h"
17 #include "factory.h"
18 #include "sets.h"
19 #include "sortedlist.h"
20 #include "task.h"
21 #include "trckeyzsampling.h"
22 
23 class TrcKeyValue;
24 
25 namespace EM { class EMObject; }
26 
27 namespace MPE
28 {
29 
30 class SectionSourceSelector;
31 
38 {
39 public:
41  EM::SectionID sectionID() const;
42 
43  virtual void reset();
44  virtual void setDirection(const TrcKeyValue&);
45  virtual const TrcKeyValue* getDirection() const;
46 
47  void setStartPosition(const TrcKey&);
48  void setStartPositions(const TypeSet<TrcKey>&);
49  void excludePositions(const TypeSet<TrcKey>*);
50  bool isExcludedPos(const TrcKey&) const;
51  int nextStep();
52 
53  void extendInVolume(const BinID& bidstep,
54  float zstep);
55 
56  const TypeSet<TrcKey>& getAddedPositions() const;
57  const TypeSet<TrcKey>& getAddedPositionsSource() const;
58 
59  virtual const TrcKeyZSampling& getExtBoundary() const;
60  void setExtBoundary(const TrcKeyZSampling&);
61  void unsetExtBoundary();
62 
63  virtual int maxNrPosInExtArea() const { return -1; }
64  virtual void preallocExtArea() {}
65 
66  const char* errMsg() const;
67  virtual void fillPar(IOPar&) const {}
68  virtual bool usePar(const IOPar&) { return true; }
69 
70  void setUndo(bool yn) { setundo_ = yn; }
71 
72 protected:
73  void addTarget(const TrcKey& target,
74  const TrcKey& src);
75  virtual float getDepth(const TrcKey& src,
76  const TrcKey& target) const;
77  virtual void prepareDataIfRequired() { return; }
78 
82 
84 
86 
89  bool setundo_;
90 };
91 
92 
94  EM::SectionID, ExtenderFactory );
95 
96 } // namespace MPE
od_int16 SectionID
Definition: emposid.h:23
#define mExpClass(module)
Definition: commondefs.h:157
Definition: trckeyvalue.h:25
TypeSet< TrcKey > startpos_
Definition: sectionextender.h:81
SequentialTask to extend the section of an EM object with ID EM::SectionID.
Definition: sectionextender.h:37
MPE stands for Model, Predict, Edit. Contains tracking and editing functions.
Definition: autotracker.h:30
virtual int maxNrPosInExtArea() const
Definition: sectionextender.h:63
The generalization of something (e.g. a computation) where the steps must be done in sequence...
Definition: task.h:147
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
const EM::SectionID sid_
Definition: sectionextender.h:87
const TypeSet< TrcKey > * excludedpos_
Definition: sectionextender.h:83
bool setundo_
Definition: sectionextender.h:89
virtual void preallocExtArea()
Definition: sectionextender.h:64
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:32
virtual bool usePar(const IOPar &)
Definition: sectionextender.h:68
virtual void fillPar(IOPar &) const
Definition: sectionextender.h:67
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:28
BufferString errmsg
Definition: sectionextender.h:88
TypeSet< TrcKey > addedpos_
Definition: sectionextender.h:79
Base class for all EarthModel objects.
Definition: emobject.h:117
mDefineFactory2Param(uiTools, uiGridder2DGrp, uiParent *, const BufferString &, uiGridder2DFact)
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:23
void setUndo(bool yn)
Definition: sectionextender.h:70
TrcKeyZSampling extboundary_
Definition: sectionextender.h:85
const char * errMsg() const
Definition: horizontracker.h:59
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:26
TypeSet< TrcKey > addedpossrc_
Definition: sectionextender.h:80
virtual void prepareDataIfRequired()
Definition: sectionextender.h:77

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