OpendTect  6.3
uimpe.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: K. Tingdahl
8  Date: July 2005
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "uimpemod.h"
14 
15 #include "bufstring.h"
16 #include "callback.h"
17 #include "color.h"
18 #include "draw.h"
19 #include "emposid.h"
20 #include "emseedpicker.h"
21 #include "mpeengine.h"
22 #include "randcolor.h"
23 #include "valseriestracker.h"
24 
25 #include "uigroup.h"
26 
27 class TrcKeyValue;
28 class uiMPEPartServer;
29 class uiParent;
30 
31 namespace Attrib { class DescSet; }
32 
33 
34 namespace MPE
35 {
36 
37 class SectionTracker;
38 
39 
43 public:
44  bool checkInVolumeTrackMode() const;
45  bool checkActiveTracker() const;
46  bool checkStoredData(Attrib::SelSpec&,DBKey&) const;
47  bool checkPreloadedData(const DBKey&) const;
48 };
49 
55 {
56 public:
57  uiSetupGroup(uiParent*,const char* helpref);
60  virtual EMSeedPicker::TrackMode getMode() const = 0;
62  virtual EventTracker::CompareMethod getTrackingMethod() const = 0;
63  virtual void setSeedPos(const TrcKeyValue&) {}
64  virtual void setColor(const Color&) {}
65  virtual const Color& getColor() = 0;
66  virtual void setLineWidth(int) {}
67  virtual int getLineWidth() const = 0;
68  virtual void setMarkerStyle(const OD::MarkerStyle3D&) {}
69  virtual const OD::MarkerStyle3D& getMarkerStyle() = 0;
70 
71  virtual NotifierAccess* modeChangeNotifier() { return 0; }
72  virtual NotifierAccess* propertyChangeNotifier() { return 0; }
73  virtual NotifierAccess* eventChangeNotifier() { return 0; }
74  virtual NotifierAccess* correlationChangeNotifier() { return 0; }
75 
76  virtual bool commitToTracker(bool& fieldchg) const { return true; }
77  virtual bool commitToTracker() const;
78 
79  virtual void enableTracking(bool) {}
80  virtual void showGroupOnTop(const char* grpnm) {}
82 
84 };
85 
86 
90 typedef uiSetupGroup*(*uiSetupGrpCreationFunc)(uiParent*,const char* typestr);
91 
98 {
99 public:
100  void addFactory(uiSetupGrpCreationFunc f, const char* name);
101  uiSetupGroup* create(const char* nm,uiParent*,const char* typestr);
105 protected:
108 
109 };
110 
111 
119 {
120 public:
122 };
123 
124 
125 
131 
132 } // namespace MPE
Definition: uigroup.h:53
virtual void enableTracking(bool)
Definition: uimpe.h:79
#define mExpClass(module)
Definition: commondefs.h:157
uiSetupGroup *(* uiSetupGrpCreationFunc)(uiParent *, const char *typestr)
Definition: uimpe.h:90
Definition: trckeyvalue.h:25
virtual NotifierAccess * modeChangeNotifier()
Definition: uimpe.h:71
Definition: uimpe.h:97
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
virtual void setLineWidth(int)
Definition: uimpe.h:66
#define mGlobal(module)
Definition: commondefs.h:160
TypeSet< uiSetupGrpCreationFunc > funcs
Definition: uimpe.h:107
Interface class for Notifier. See comments there.
Definition: notify.h:20
MPE stands for Model, Predict, Edit. Contains tracking and editing functions.
Definition: autotracker.h:30
uiSetupGroupFactory setupgrpfact
Definition: uimpe.h:121
virtual void showGroupOnTop(const char *grpnm)
Definition: uimpe.h:80
Definition: uiparent.h:24
virtual NotifierAccess * eventChangeNotifier()
Definition: uimpe.h:73
virtual void setSectionTracker(SectionTracker *)
Definition: uimpe.h:58
Set of BufferString objects.
Definition: bufstringset.h:25
Tracks sections of EM::EMObject with ID EM::SectionID.
Definition: sectiontracker.h:36
virtual void setSeedPos(const TrcKeyValue &)
Definition: uimpe.h:63
virtual void setColor(const Color &)
Definition: uimpe.h:64
uiMPEEngine & uiMPE()
Access function for an instance (and normally the only instance) of MPE::uiMPEEngine.
virtual void setMPEPartServer(uiMPEPartServer *)
Definition: uimpe.h:81
Implementation of Tracking part server interface.
Definition: uimpepartserv.h:31
virtual void setMode(EMSeedPicker::TrackMode)
Definition: uimpe.h:59
virtual NotifierAccess * propertyChangeNotifier()
Definition: uimpe.h:72
TrackMode
Definition: emseedpicker.h:96
virtual void setMarkerStyle(const OD::MarkerStyle3D &)
Definition: uimpe.h:68
Definition: uimpe.h:54
virtual bool commitToTracker(bool &fieldchg) const
Definition: uimpe.h:76
virtual NotifierAccess * correlationChangeNotifier()
Definition: uimpe.h:74
Definition: uimpe.h:41
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
static uiHor3DInterpol * create(uiParent *)
CompareMethod
Definition: valseriestracker.h:72
Specifies an attribute selection (ID or output number of NN).
Definition: attribsel.h:43
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:24
Full key to any object in the OpendTect data store.
Definition: dbkey.h:36
BufferStringSet names_
Definition: uimpe.h:106
BufferString helpref_
Definition: uimpe.h:83
virtual void setTrackingMethod(EventTracker::CompareMethod)
Definition: uimpe.h:61
Definition: mpeengine.h:36
Holder class for MPE ui-factories. Is normally only retrieved by MPE::uiMPE().
Definition: uimpe.h:118
Definition: draw.h:91
Semblance Attribute.
Definition: attribdataholder.h:21

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