OpendTect
7.0
|
Reads seismic data into buffers providing a Moving Virtual Subcube of seismic data. More...
Public Types | |
enum | AdvanceState { NewPosition , Buffering , EndReached , Error } |
Public Member Functions | |
SeisMSCProvider (const char *fnm) | |
'loose' 3D Post-stack CBVS files only. More... | |
SeisMSCProvider (const IOObj &) | |
Use any real user entry from '.omf' file. More... | |
SeisMSCProvider (const MultiID &) | |
SeisMSCProvider (const MultiID &, Seis::GeomType) | |
Use any real user entry from '.omf' file. More... | |
virtual | ~SeisMSCProvider () |
AdvanceState | advance () |
int | comparePos (const SeisMSCProvider &) const |
0 = equal; -1 means I need to next(), 1 the other More... | |
int | crlStepout (bool req) const |
uiString | errMsg () const |
int | estimatedNrTraces () const |
returns -1 when unknown More... | |
void | forceFloatData (bool yn) |
SeisTrc * | get (const BinID &) |
const SeisTrc * | get (const BinID &bid) const |
SeisTrc * | get (int deltainl, int deltacrl) |
const SeisTrc * | get (int i, int c) const |
BinID | getPos () const |
int | getTrcNr () const |
int | inlStepout (bool req) const |
bool | is2D () const |
bool | prepareWork () |
Opens the input data. Can still set stepouts etc. More... | |
SeisTrcReader & | reader () |
const SeisTrcReader & | reader () const |
void | setSelData (Seis::SelData *) |
seldata becomes mine More... | |
void | setStepout (Array2D< bool > *mask) |
void | setStepout (int, int, bool required) |
void | setStepoutStep (int i, int c) |
Protected Types | |
enum | ReadState { NeedStart , ReadOK , ReadAtEnd , ReadErr } |
Protected Member Functions | |
bool | doAdvance () |
void | init () |
bool | isReqBoxFilled () const |
int | readTrace (SeisTrc &) |
bool | startWork () |
Protected Attributes | |
int | bufidx_ |
RowCol | desstepout_ |
uiString | errmsg_ |
int | estnrtrcs_ |
bool | intofloats_ |
int | pivotidx_ |
int | pivotidy_ |
SeisTrcReader & | rdr_ |
ReadState | readstate_ |
Array2D< bool > * | reqmask_ |
RowCol | reqstepout_ |
RowCol | stepoutstep_ |
ObjectSet< SeisTrcBuf > | tbufs_ |
int | trcidx_ |
bool | workstarted_ |
Reads seismic data into buffers providing a Moving Virtual Subcube of seismic data.
This is a SeisTrcGroup that allows advancing by reading traces from storage. Note that the provider may skip incomplete parts.
The get() method returns a pointer to the trace, where you specify the inline and crossline number relative to the center. This is irrespective the steps in the cube's numbers. Therefore, the actual inline number of get(1,0) may be 10 higher than get(0,0) .
The advance() method moves the reader one step further along the seismic storage. The return value will tell you whether there is a new position available to work on, or that more traces need to be read first.
You can specify two stepouts: required and desired. The required stepout traces will always be available when the return of advance() is DataOK. If "Buffering" is returned, then the provider is still gathering more traces.
<>
|
protected |
SeisMSCProvider::SeisMSCProvider | ( | const MultiID & | , |
Seis::GeomType | |||
) |
Use any real user entry from '.omf' file.
SeisMSCProvider::SeisMSCProvider | ( | const IOObj & | ) |
Use any real user entry from '.omf' file.
SeisMSCProvider::SeisMSCProvider | ( | const char * | fnm | ) |
'loose' 3D Post-stack CBVS files only.
|
virtual |
SeisMSCProvider::SeisMSCProvider | ( | const MultiID & | ) |
AdvanceState SeisMSCProvider::advance | ( | ) |
int SeisMSCProvider::comparePos | ( | const SeisMSCProvider & | ) | const |
0 = equal; -1 means I need to next(), 1 the other
|
inline |
|
protected |
|
inline |
int SeisMSCProvider::estimatedNrTraces | ( | ) | const |
returns -1 when unknown
|
inline |
SeisTrc* SeisMSCProvider::get | ( | int | deltainl, |
int | deltacrl | ||
) |
|
inline |
BinID SeisMSCProvider::getPos | ( | ) | const |
int SeisMSCProvider::getTrcNr | ( | ) | const |
|
protected |
|
inline |
bool SeisMSCProvider::is2D | ( | ) | const |
|
protected |
bool SeisMSCProvider::prepareWork | ( | ) |
Opens the input data. Can still set stepouts etc.
|
inline |
|
inline |
|
protected |
void SeisMSCProvider::setSelData | ( | Seis::SelData * | ) |
seldata becomes mine
void SeisMSCProvider::setStepout | ( | Array2D< bool > * | mask | ) |
mask has 2m+1 * 2n+1 entries and becomes mine.
void SeisMSCProvider::setStepout | ( | int | , |
int | , | ||
bool | required | ||
) |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2024