29 Wavelet(
bool ricker_else_sinc,
float fpeak,
30 float sample_intv=
mUdf(
float),
float scale=1);
36 static IOObj* getIOObj(
const char* wvltnm);
37 bool put(
const IOObj*)
const;
40 const float*
samples()
const {
return samps_; }
41 inline void set(
int idx,
float v )
42 {
if ( isValidSample(idx) ) samps_[idx] = v; }
43 inline float get(
int idx )
const 44 {
return isValidSample(idx) ? samps_[idx] : 0.f; }
46 {
return idx>=0 && idx<sz_; }
52 -cidx_*dpos_, (sz_-cidx_-1)*dpos_, dpos_ ); }
53 int nearestSample(
float z)
const;
56 int size()
const {
return sz_; }
57 float getValue(
float)
const;
65 bool reSampleTime(
float newsr);
66 void ensureSymmetricalSamples();
69 void transform(
float b,
float a);
72 bool trimPaddedZeros();
73 float getExtrValue(
bool ismax =
true)
const;
75 int getPos(
float val,
bool closetocenteronly=
false)
const;
81 static void markScaled(
const MultiID&
id);
85 static bool isScaled(
const MultiID&);
113 :wv_(const_cast<
Wavelet&>(wv)) {}
117 void setValue(
od_int64 idx,
float v);
119 const float* arr()
const;
142 float getValue(
float z )
const {
return wv_.getValue(z); }
#define mExpClass(module)
Definition: commondefs.h:160
Summary for a Seismic object.
Definition: segydirectdef.h:23
float getValue(const float *p) const
Definition: wavelet.h:143
float * samps_
Definition: wavelet.h:94
bool hasSymmetricalSamples()
Definition: wavelet.h:54
WaveletValueSeries(const Wavelet &wv)
Definition: wavelet.h:112
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
void setCenterSample(int cidx)
positive for starttwt < 0
Definition: wavelet.h:60
#define od_int64
Definition: plftypes.h:36
ValueSeriesInterpolator< float > * intpol_
Definition: wavelet.h:97
Mathematical function.
Definition: mathfunc.h:61
bool isValidSample(int idx) const
Definition: wavelet.h:45
WaveletFunction(const Wavelet &wv)
Definition: wavelet.h:138
T value(const ValueSeries< T > &, T pos) const
Definition: valseriesinterpol.h:60
float * samples()
Definition: wavelet.h:39
int sz_
Definition: wavelet.h:95
int centerSample() const
Definition: wavelet.h:49
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:272
Interface to a series of values.
Definition: odmemory.h:17
Definition: valseriesinterpol.h:25
float sampleRate() const
Definition: wavelet.h:48
float dpos_
Definition: wavelet.h:93
void setSampleRate(float sr)
Definition: wavelet.h:59
int cidx_
The index of the center sample.
Definition: wavelet.h:96
const float * samples() const
Definition: wavelet.h:40
ValueSeries< float > * clone() const
Definition: wavelet.h:150
Wavelet & wv_
Definition: wavelet.h:125
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
int size() const
Definition: wavelet.h:56
Object with a name.
Definition: namedobj.h:35
bool writable() const
Definition: wavelet.h:116
float getValue(float z) const
Definition: wavelet.h:142
StepInterval< float > samplePositions() const
Definition: wavelet.h:50
Definition: wavelet.h:135
void reSample(const FloatMathFunction &input, const A &samplevals, B &output, int nrsamples)
Definition: genericnumer.h:203
Compound key consisting of ints.
Definition: multiid.h:25
Definition: wavelet.h:108
const Wavelet & wv_
Definition: wavelet.h:147