OpendTect-6_4  6.4
emtracker.h
Go to the documentation of this file.
1 #ifndef emtracker_h
2 #define emtracker_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: A.H. Bril
9  Date: 23-10-1996
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "mpeenginemod.h"
16 #include "factory.h"
17 #include "emposid.h"
18 #include "refcount.h"
19 #include "sets.h"
20 #include "trckeyzsampling.h"
21 #include "trckeyvalue.h"
22 #include "uistring.h"
23 
24 class Executor;
25 
26 namespace Geometry { class Element; }
27 namespace EM { class EMObject; }
28 namespace Attrib { class SelSpec; }
29 
30 namespace MPE
31 {
32 
33 class EMSeedPicker;
34 class SectionTracker;
35 
40 mExpClass(MPEEngine) EMTracker
41 { mRefCountImpl(EMTracker)
42 mODTextTranslationClass(EMTracker)
43 public:
44  EMTracker(EM::EMObject*);
45 
46  BufferString objectName() const;
47  EM::EMObject* emObject() { return emobject_; }
48  EM::ObjectID objectID() const;
49 
50  virtual bool is2D() const { return false; }
51 
52  void setTypeStr(const char* type)
53  { type_ = type; }
54  const char* getTypeStr() const { return type_; }
55 
56  virtual bool isEnabled() const { return isenabled_; }
57  virtual void enable(bool yn) { isenabled_=yn; }
58 
59  virtual bool snapPositions(const TypeSet<TrcKey>&);
60 
61  virtual TrcKeyZSampling getAttribCube(const Attrib::SelSpec&) const;
62  void getNeededAttribs(
64 
65  virtual SectionTracker* createSectionTracker(EM::SectionID) = 0;
66  SectionTracker* cloneSectionTracker();
67  SectionTracker* getSectionTracker(EM::SectionID,
68  bool create=false);
69  virtual EMSeedPicker* getSeedPicker(bool createifnotpresent=true)
70  { return 0; }
71  void applySetupAsDefault(const EM::SectionID);
72 
73  const char* errMsg() const;
74 
75  void fillPar(IOPar&) const;
76  bool usePar(const IOPar&);
77 
78 protected:
79 
80  bool isenabled_;
83  const char* type_;
84 
85  void setEMObject(EM::EMObject*);
86 
87  static const char* setupidStr() { return "SetupID"; }
88  static const char* sectionidStr() { return "SectionID"; }
89 
90 private:
92 };
93 
94 
95 mDefineFactory1Param( MPEEngine, EMTracker, EM::EMObject*, TrackerFactory );
96 
97 
98 } // namespace MPE
99 
100 #endif
virtual void enable(bool yn)
Definition: emtracker.h:57
#define mRefCountImpl(ClassName)
Macro to setup a class with destructor for reference counting.
Definition: refcount.h:163
od_int16 SectionID
Definition: emposid.h:25
#define mExpClass(module)
Definition: commondefs.h:160
od_int32 ObjectID
Definition: emposid.h:24
const char * type_
Definition: emtracker.h:83
virtual bool isEnabled() const
Definition: emtracker.h:56
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
MPE stands for Model, Predict, Edit. Contains tracking and editing functions.
Definition: autotracker.h:32
const char * getTypeStr() const
Definition: emtracker.h:54
bool isenabled_
Definition: emtracker.h:80
Tracks EM objects.
Definition: emtracker.h:40
Handles adding of seeds and retracking of events based on new seeds. An instance of the class is usua...
Definition: emseedpicker.h:63
ObjectSet< SectionTracker > sectiontrackers_
Definition: emtracker.h:81
EM::EMObject * emObject()
Definition: emtracker.h:47
Tracks sections of EM::EMObject with ID EM::SectionID.
Definition: sectiontracker.h:38
Set of pointers to objects.
Definition: commontypes.h:32
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
EM::EMObject * emobject_
Definition: emtracker.h:91
BufferString errmsg_
Definition: emtracker.h:82
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
virtual EMSeedPicker * getSeedPicker(bool createifnotpresent=true)
Definition: emtracker.h:69
virtual bool is2D() const
Definition: emtracker.h:50
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
static const char * setupidStr()
Definition: emtracker.h:87
static const char * sectionidStr()
Definition: emtracker.h:88
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
static uiHor3DInterpol * create(uiParent *)
Base class for all EarthModel objects.
Definition: emobject.h:158
#define mDefineFactory1Param(mod, T, P, funcname)
Definition: factory.h:438
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:25
Specifies an attribute selection (ID or output number of NN).
Definition: attribsel.h:45
const char * errMsg() const
Definition: horizontracker.h:61
void setTypeStr(const char *type)
Definition: emtracker.h:52
Definition: arraytesselator.h:21
Semblance Attribute.
Definition: attribdataholder.h:25
Specification to enable chunkwise execution of a process.
Definition: executor.h:39

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