OpendTect-6_4  6.4
uihorizontracksetup.h
Go to the documentation of this file.
1 #ifndef uihorizontracksetup_h
2 #define uihorizontracksetup_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: K. Tingdahl
9  Date: December 2005
10  RCS: $Id: uihorizontracksetup.h 38749 2015-04-02 19:49:51Z nanne.hemstra@dgbes.com $
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "uimpemod.h"
16 #include "color.h"
17 #include "draw.h"
18 #include "valseriesevent.h"
19 #include "emseedpicker.h"
20 
21 #include "uimpe.h"
22 
23 class uiButtonGroup;
24 class uiCheckBox;
25 class uiColorInput;
26 class uiGenInput;
27 class uiSeisSel;
28 class uiSlider;
29 class uiTabStack;
30 class uiToolBar;
31 class uiToolButton;
32 
33 
34 namespace MPE
35 {
36 
37 class HorizonAdjuster;
38 class HorizonTrackerMgr;
39 class SectionTracker;
40 class uiCorrelationGroup;
41 class uiEventGroup;
42 
43 
48 public:
49  uiHorizonSetupGroup(uiParent*,const char*);
51 
52  void setSectionTracker(SectionTracker*);
53 
54  void setMode(EMSeedPicker::TrackMode);
55  EMSeedPicker::TrackMode getMode() const;
56  void setTrackingMethod(EventTracker::CompareMethod);
57  EventTracker::CompareMethod getTrackingMethod() const;
58  void setSeedPos(const TrcKeyValue&);
59  void setColor(const Color&);
60  const Color& getColor();
61  int getLineWidth() const;
62  void setLineWidth(int);
63  void setMarkerStyle(const MarkerStyle3D&);
64  const MarkerStyle3D& getMarkerStyle();
65 
67  { return &modeChanged_; }
69  { return &propertyChanged_; }
70  NotifierAccess* eventChangeNotifier();
71  NotifierAccess* correlationChangeNotifier();
73  { return &varianceChanged_; }
74 
75  virtual bool commitToTracker() const
76  { bool b; return commitToTracker(b); }
77  bool commitToTracker(bool& fieldchange) const;
78 
79  void enableTracking(bool);
80  void showGroupOnTop(const char* grpnm);
81 
82  virtual void setMPEPartServer(uiMPEPartServer*);
83 
84 protected:
85 
86  virtual void initStuff();
87 
88 // General
98 
99  void initToolBar();
100  void updateButtonSensitivity();
101  void mpeActionCB(CallBacker*);
102  void enabTrackCB(CallBacker*);
103  void startCB(CallBacker*);
104  void stopCB(CallBacker*);
105  void saveCB(CallBacker*);
106  void retrackCB(CallBacker*);
107  void undoCB(CallBacker*);
108  void redoCB(CallBacker*);
109  void horizonSelCB(CallBacker*);
110  void trackingFinishedCB(CallBacker*);
111 
112 // Mode Group
113  uiGroup* createModeGroup();
114  void initModeGroup();
115  void seedModeChange(CallBacker*);
116 
122 
123 // Event and Correlation Group
126 
127 // Variance Group
128  uiGroup* createVarianceGroup();
129  void initVarianceGroup();
130  void selUseVariance(CallBacker*);
131  void varianceChangeCB(CallBacker*);
132 
136 
137 
138 // Property Group
139  uiGroup* createPropertyGroup();
140  void initPropertyGroup();
141  void colorChangeCB(CallBacker*);
142  void specColorChangeCB(CallBacker*);
143  void seedTypeSel(CallBacker*);
144  void seedColSel(CallBacker*);
145  void seedSliderMove(CallBacker*);
146 
155 
156 
157  bool is2d_;
160 
164 
168 
169  static const char** sKeyEventNames();
170  static const VSEvent::Type* cEventTypes();
171 
173 };
174 
175 
177 {
178 public:
179  static void initClass();
180 
181 protected:
182  uiBaseHorizonSetupGroup(uiParent*,const char*);
183  static uiSetupGroup* create(uiParent*,const char* typestr);
184 };
185 
186 
187 } // namespace MPE
188 
189 #endif
Definition: uigroup.h:54
Definition: uitoolbar.h:31
NotifierAccess * varianceChangeNotifier()
Definition: uihorizontracksetup.h:72
#define mExpClass(module)
Definition: commondefs.h:160
Definition: trckeyvalue.h:27
uiButtonGroup * modeselgrp_
Definition: uihorizontracksetup.h:117
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
int savebutid_
Definition: uihorizontracksetup.h:94
Definition: uislider.h:42
uiCheckBox * snapfld_
Definition: uihorizontracksetup.h:119
SectionAdjuster to adjust EM::Horizon.
Definition: horizonadjuster.h:34
Notifier< uiHorizonSetupGroup > modeChanged_
Definition: uihorizontracksetup.h:165
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
Interface class for Notifier. See comments there.
Definition: callback.h:161
uiGenInput * failfld_
Definition: uihorizontracksetup.h:121
MPE stands for Model, Predict, Edit. Contains tracking and editing functions.
Definition: autotracker.h:32
uiSlider * linewidthfld_
Definition: uihorizontracksetup.h:148
uiMPEPartServer * mps_
Definition: uihorizontracksetup.h:172
NotifierAccess * propertyChangeNotifier()
Definition: uihorizontracksetup.h:68
Definition: uiparent.h:26
uiToolBar * toolbar_
Definition: uihorizontracksetup.h:90
Notifier< uiHorizonSetupGroup > propertyChanged_
Definition: uihorizontracksetup.h:167
Tracks sections of EM::EMObject with ID EM::SectionID.
Definition: sectiontracker.h:38
SectionTracker * sectiontracker_
Definition: uihorizontracksetup.h:162
Definition: callback.h:254
uiCheckBox * betweenseedsfld_
Definition: uihorizontracksetup.h:118
int stopbutid_
Definition: uihorizontracksetup.h:93
uiMPEEngine & uiMPE()
Access function for an instance (and normally the only instance) of MPE::uiMPEEngine.
uiColorInput * parentcolfld_
Definition: uihorizontracksetup.h:152
Definition: uiseissel.h:26
Horizon tracking setup dialog.
Definition: uimpeeventgrp.h:36
Horizon tracking setup dialog.
Definition: uimpecorrelationgrp.h:34
uiColorInput * seedcolselfld_
Definition: uihorizontracksetup.h:150
General Input Element.
Definition: uigeninput.h:58
Definition: uitabstack.h:33
Implementation of Tracking part server interface.
Definition: uimpepartserv.h:33
uiColorInput * lockcolfld_
Definition: uihorizontracksetup.h:154
TrackMode
Definition: emseedpicker.h:106
uiSeisSel * variancefld_
Definition: uihorizontracksetup.h:134
Horizon tracking setup dialog.
Definition: uihorizontracksetup.h:46
Definition: uibuttongroup.h:30
Definition: draw.h:88
Definition: uihorizontracksetup.h:176
Definition: uimpe.h:56
MarkerStyle3D markerstyle_
Definition: uihorizontracksetup.h:159
int retrackbutid_
Definition: uihorizontracksetup.h:95
int redobutid_
Definition: uihorizontracksetup.h:97
small element for color selection. Has no text label.
Definition: uicolor.h:44
uiCorrelationGroup * correlationgrp_
Definition: uihorizontracksetup.h:125
static uiHor3DInterpol * create(uiParent *)
int undobutid_
Definition: uihorizontracksetup.h:96
HorizonAdjuster * horadj_
Definition: uihorizontracksetup.h:163
Definition: uitoolbutton.h:22
CompareMethod
Definition: valseriestracker.h:74
uiSlider * seedsliderfld_
Definition: uihorizontracksetup.h:151
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:26
bool is2d_
Definition: uihorizontracksetup.h:157
int startbutid_
Definition: uihorizontracksetup.h:92
Notifier< uiHorizonSetupGroup > varianceChanged_
Definition: uihorizontracksetup.h:166
uiGenInput * methodfld_
Definition: uihorizontracksetup.h:120
int trackbutid_
Definition: uihorizontracksetup.h:91
uiColorInput * colorfld_
Definition: uihorizontracksetup.h:147
uiColorInput * selectioncolfld_
Definition: uihorizontracksetup.h:153
Definition: uibutton.h:134
uiGenInput * seedtypefld_
Definition: uihorizontracksetup.h:149
EMSeedPicker::TrackMode mode_
Definition: uihorizontracksetup.h:158
Type
Definition: valseriesevent.h:26
virtual bool commitToTracker() const
Definition: uihorizontracksetup.h:75
uiTabStack * tabgrp_
Definition: uihorizontracksetup.h:89
NotifierAccess * modeChangeNotifier()
Definition: uihorizontracksetup.h:66
static void initClass()
uiGenInput * varthresholdfld_
Definition: uihorizontracksetup.h:135
uiGenInput * usevarfld_
Definition: uihorizontracksetup.h:133
HorizonTrackerMgr * trackmgr_
Definition: uihorizontracksetup.h:161
Executor to auto track.
Definition: autotracker.h:45
uiEventGroup * eventgrp_
Definition: uihorizontracksetup.h:124

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