OpendTect
6.6
|
builds an index of a list of positions, making it easy to find a specific position. More...
Public Types | |
typedef TypeSet< FileIdxType > | FileIdxSet |
typedef PosKeyList::FileIdxType | FileIdxType |
typedef TypeSet< FileOffsType > | FileOffsSet |
typedef od_stream_Pos | FileOffsType |
typedef DataInterpreter< float > | FloatInterpreter |
typedef DataInterpreter< int > | Int32Interpreter |
typedef DataInterpreter< od_int64 > | Int64Interpreter |
typedef TypeSet< KeyIdxType > | KeyIdxSet |
typedef Index_Type | KeyIdxType |
Public Member Functions | |
PosIndexer (const PosKeyList &, bool doindex, bool excludeunreasonable) | |
virtual | ~PosIndexer () |
void | add (const Seis::PosKey &, od_int64 offset) |
Adds the pk to index. Called from reIndex. More... | |
const Interval< int > & | crlRange () const |
bool | dumpTo (od_ostream &strm) const |
void | empty () |
TypeSet< od_int64 > | findAll (const PosKey &) const |
ignores offset More... | |
od_int64 | findFirst (const BinID &) const |
od_int64 | findFirst (const PosKey &, bool chckoffs=true) const |
od_int64 | findFirst (int) const |
od_int64 | findOcc (const PosKey &, int occ) const |
ignores offset More... | |
Seis::GeomType | geomType () const |
void | getCrls (int inl, TypeSet< int > &) const |
const TypeSet< int > & | getInls () const |
const Interval< int > & | inlRange () const |
bool | ioCompressed () const |
od_int64 | maxIdx () const |
od_int64 | nrRejected () const |
const Interval< float > & | offsetRange () const |
bool | readFrom (const char *nm, od_int64 offset, bool all, DataInterpreter< int > *=0, DataInterpreter< od_int64 > *=0, DataInterpreter< float > *=0) |
void | reIndex () |
void | setEmpty () |
void | setIOCompressed (bool yn=true) |
const Interval< int > & | trcNrRange () const |
bool | validIdx (od_int64 idx) const |
Protected Member Functions | |
void | dumpLineCompressed (od_ostream &, const KeyIdxSet &, const FileIdxSet &) const |
int | getFirstIdxs (const BinID &, int &, int &) |
bool | isReasonable (const BinID &) const |
bool | readHeader (DataInterpreter< int > *, DataInterpreter< od_int64 > *, DataInterpreter< float > *) |
bool | readLine (TypeSet< int > &crl, TypeSet< od_int64 > &, DataInterpreter< int > *, DataInterpreter< od_int64 > *) const |
bool | readLineCompressed (KeyIdxSet &, FileIdxSet &) const |
Protected Attributes | |
Interval< int > | crlrg_ |
ObjectSet< TypeSet< int > > | crlsets_ |
TypeSet< int > | curcrlset_ |
TypeSet< od_int64 > | curidxset_ |
int | curinl_ |
bool | excludeunreasonable_ |
Interval< int > | goodcrlrg_ |
Interval< int > | goodinlrg_ |
ObjectSet< TypeSet< od_int64 > > | idxsets_ |
TypeSet< od_int64 > | inlfileoffsets_ |
Interval< int > | inlrg_ |
TypeSet< int > | inls_ |
DataInterpreter< int > * | int32interp_ |
DataInterpreter< od_int64 > * | int64interp_ |
bool | iocompressedmgr_ |
bool | is2d_ |
bool | isps_ |
Threads::Lock | lock_ |
od_int64 | maxidx_ |
od_int64 | nrrejected_ |
Interval< float > | offsrg_ |
const PosKeyList & | pkl_ |
od_istream * | strm_ |
builds an index of a list of positions, making it easy to find a specific position.
In principle, no sorting is required. While at it, in/xline and offset ranges are determined.
<>
typedef od_stream_Pos Seis::PosIndexer::FileOffsType |
typedef DataInterpreter<float> Seis::PosIndexer::FloatInterpreter |
typedef DataInterpreter<int> Seis::PosIndexer::Int32Interpreter |
typedef DataInterpreter<od_int64> Seis::PosIndexer::Int64Interpreter |
typedef TypeSet<KeyIdxType> Seis::PosIndexer::KeyIdxSet |
typedef Index_Type Seis::PosIndexer::KeyIdxType |
Seis::PosIndexer::PosIndexer | ( | const PosKeyList & | , |
bool | doindex, | ||
bool | excludeunreasonable | ||
) |
doindex | |
excludeunreasonable | enables rejection of traces far outside survey. |
|
virtual |
void Seis::PosIndexer::add | ( | const Seis::PosKey & | , |
od_int64 | offset | ||
) |
Adds the pk to index. Called from reIndex.
|
inline |
|
protected |
bool Seis::PosIndexer::dumpTo | ( | od_ostream & | strm | ) | const |
|
inline |
od_int64 Seis::PosIndexer::findFirst | ( | const BinID & | ) | const |
-1 = inl not found -2 crl/trcnr not found
od_int64 Seis::PosIndexer::findFirst | ( | const PosKey & | , |
bool | chckoffs = true |
||
) | const |
-1 = inl not found or empty -2 crl/trcnr not found -3 offs not found
od_int64 Seis::PosIndexer::findFirst | ( | int | ) | const |
-1 = empty -2 trcnr not found
od_int64 Seis::PosIndexer::findOcc | ( | const PosKey & | , |
int | occ | ||
) | const |
ignores offset
|
inline |
void Seis::PosIndexer::getCrls | ( | int | inl, |
TypeSet< int > & | |||
) | const |
|
protected |
|
inline |
|
inline |
|
inline |
|
protected |
|
inline |
|
inline |
|
inline |
bool Seis::PosIndexer::readFrom | ( | const char * | nm, |
od_int64 | offset, | ||
bool | all, | ||
DataInterpreter< int > * | = 0 , |
||
DataInterpreter< od_int64 > * | = 0 , |
||
DataInterpreter< float > * | = 0 |
||
) |
|
protected |
|
protected |
|
protected |
void Seis::PosIndexer::reIndex | ( | ) |
void Seis::PosIndexer::setEmpty | ( | ) |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B.V. 1995-2022