OpendTect-6_4  6.4
uiwelllogcalc.h
Go to the documentation of this file.
1 #ifndef uiwelllogcalc_h
2 #define uiwelllogcalc_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Bert
9  Date: June 2009
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "uiwellmod.h"
16 #include "uidialog.h"
17 #include "bufstringset.h"
18 #include "multiid.h"
19 #include "propertyref.h"
20 
21 class uiUnitSel;
22 class uiGenInput;
23 class uiCheckBox;
24 class uiComboBox;
25 class uiMathFormula;
26 namespace Math { class Formula; }
27 namespace Well { class D2TModel; class Log; class LogSet; class Track;}
28 
29 
34 public:
36  bool rockphysmode=false);
37  ~uiWellLogCalc();
38 
39  bool haveNewLogs() const { return havenew_; }
40 
41  void setOutputLogName(const char* nm);
42  const char* getOutputLogName() const;
43 
44 protected:
45 
52 
55  float zsampintv_;
58  bool havenew_;
59 
60  struct InpData
61  {
62  InpData( const Well::Log* w=0, bool n=false )
63  : wl_(w), shift_(0), specidx_(-1)
64  , isconst_(false), constval_(0) {}
65  bool operator ==( const InpData& id ) const
66  { return wl_ == id.wl_; }
67  const Well::Log* wl_;
68  int shift_;
69  int specidx_;
70  bool isconst_;
71  float constval_;
72  };
73 
74  void getAllLogs();
75  bool useForm(const TypeSet<PropertyRef::StdType>* t=0);
76  Well::Log* getLog4InpIdx(Well::LogSet&,int varnr);
77  void setUnits4Log(int);
78  void fillSRFld(int);
79 
80  bool getInpDatas(Well::LogSet&,TypeSet<InpData>&);
81  Well::Log* getInpLog(Well::LogSet&,int,bool);
82  bool calcLog(Well::Log&,const TypeSet<InpData>&,
84 
85  void initWin(CallBacker*);
86  void rockPhysReq(CallBacker*);
87  void feetSel(CallBacker*);
88  void formSet(CallBacker*);
89  void formUnitSel(CallBacker*);
90  void inpSel(CallBacker*);
91  void vwLog(CallBacker*);
92 
93  bool acceptOK(CallBacker*);
94 
95 };
96 
97 
98 #endif
#define mExpClass(module)
Definition: commondefs.h:160
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
Depth to time model.
Definition: welld2tmodel.h:34
bool operator==(const ArrayNDInfo &a1, const ArrayNDInfo &a2)
Definition: arrayndinfo.h:53
Selector for UnitOfMeasure&#39;s.
Definition: uiunitsel.h:38
uiGenInput * nmfld_
Definition: uiwelllogcalc.h:47
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
Well log.
Definition: welllog.h:44
float zsampintv_
Definition: uiwelllogcalc.h:55
Log set.
Definition: welllogset.h:32
Combo box.
Definition: uicombobox.h:32
int shift_
Definition: uiwelllogcalc.h:68
Definition: uiparent.h:26
uiUnitSel * outunfld_
Definition: uiwelllogcalc.h:50
Set of BufferString objects.
Definition: bufstringset.h:28
bool haveNewLogs() const
Definition: uiwelllogcalc.h:39
Definition: uidialog.h:42
bool havenew_
Definition: uiwelllogcalc.h:58
Definition: uiwelllogcalc.h:60
const TypeSet< MultiID > wellids_
Definition: uiwelllogcalc.h:57
int specidx_
Definition: uiwelllogcalc.h:69
Math formula: (expression, inputs, units, calculation, storage).
Definition: mathformula.h:65
Definition: directionalsurvey.h:19
InpData(const Well::Log *w=0, bool n=false)
Definition: uiwelllogcalc.h:62
uiMathFormula * formfld_
Definition: uiwelllogcalc.h:46
Well track.
Definition: welltrack.h:29
General Input Element.
Definition: uigeninput.h:58
Well::LogSet & superwls_
Definition: uiwelllogcalc.h:53
const Well::Log * wl_
Definition: uiwelllogcalc.h:67
uiGenInput * srfld_
Definition: uiwelllogcalc.h:48
Definition: uimathformula.h:34
float constval_
Definition: uiwelllogcalc.h:71
Dialog for marker specifications.
Definition: uiwelllogcalc.h:32
Math::Formula & form_
Definition: uiwelllogcalc.h:54
uiCheckBox * ftbox_
Definition: uiwelllogcalc.h:49
float Log(float)
Definition: math2.h:29
bool isconst_
Definition: uiwelllogcalc.h:70
BufferStringSet lognms_
Definition: uiwelllogcalc.h:56
Definition: uibutton.h:134
uiComboBox * interppolfld_
Definition: uiwelllogcalc.h:51

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