OpendTect-6_4  6.4
elasticpropsel.h
Go to the documentation of this file.
1 #ifndef elasticpropsel_h
2 #define elasticpropsel_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Bruno
9  Date: May 2011
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "generalmod.h"
16 #include "elasticprop.h"
17 #include "uistrings.h"
18 
19 class IOObj;
20 
27 public:
28 
29  ElasticPropSelection(bool withswave=true);
31  const ElasticPropSelection& elp)
32  { *this = elp; }
34  ElasticPropSelection& operator =(const ElasticPropSelection&);
35 
36  ElasticPropertyRef& get( int idx ) { return gt(idx); }
37  const ElasticPropertyRef& get( int idx ) const { return gt(idx); }
39  { return gt(tp); }
41  { return gt(tp); }
42 
43  static ElasticPropSelection* get(const MultiID&);
44  static ElasticPropSelection* get(const IOObj*);
45  bool put(const IOObj*) const;
46 
47  bool isValidInput(uiString*
48  errmsg = 0) const;
49 
50  void fillPar(IOPar&) const;
51  bool usePar(const IOPar&);
52 
53 protected:
54 
56  ElasticPropertyRef& gt(int idx) const;
57 
58  void mkEmpty();
59 
60 };
61 
62 
69 {
70 public:
72  const PropertyRefSelection& rps)
73  : elasticprops_(eps), refprops_(rps) {}
74 
75  float getVal(const ElasticPropertyRef& ef,
76  const float* proprefvals,
77  int proprefsz) const
78  { return getVal(ef.formula(),proprefvals, proprefsz); }
79 
80  void getVals(float& den,float& pbel,float& svel,
81  const float* proprefvals,int proprefsz) const;
82 
83 protected:
84 
87 
88  float getVal(const ElasticFormula& ef,
89  const float* proprefvals,
90  int proprefsz) const;
91 };
92 
93 
100 {
101 public:
102  ElasticPropGuess(const PropertyRefSelection&,
104 protected:
105 
106  void guessQuantity(const PropertyRefSelection&,
108  bool guessQuantity(const PropertyRef&,ElasticFormula::Type);
109 
111 };
112 
113 
114 #endif
#define mExpClass(module)
Definition: commondefs.h:160
bool put(ascostream &) const
Definition: propertyref.h:176
Computes elastic properties using parameters in ElasticPropSelection and PropertyRefSelection.
Definition: elasticpropsel.h:68
User parameters to compute values for an elastic layer (den,p/s-waves).
Definition: elasticpropsel.h:25
Definition: ioobj.h:58
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
Elastic formula def to generate elastic layers.
Definition: elasticprop.h:25
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
Type
Definition: elasticprop.h:29
Ref Data for a (usually petrophysical) property.
Definition: propertyref.h:42
ElasticFormula & formula()
Definition: elasticprop.h:120
Definition: uistring.h:89
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
const PropertyRefSelection & refprops_
Definition: elasticpropsel.h:86
mODTextTranslationClass(ElasticPropSelection) public ElasticPropSelection(const ElasticPropSelection &elp)
Definition: elasticpropsel.h:30
Guesses elastic properties using parameters in ElasticPropSelection and PropertyRefSelection.
Definition: elasticpropsel.h:99
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
ElasticPropSelection & elasticprops_
Definition: elasticpropsel.h:110
float getVal(const ElasticPropertyRef &ef, const float *proprefvals, int proprefsz) const
Definition: elasticpropsel.h:75
Elastic property reference data.
Definition: elasticprop.h:108
ElasticPropGen(const ElasticPropSelection &eps, const PropertyRefSelection &rps)
Definition: elasticpropsel.h:71
Compound key consisting of ints.
Definition: multiid.h:25
const ElasticPropSelection & elasticprops_
Definition: elasticpropsel.h:85

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