OpendTect  7.0
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Seis::SelData Class Referenceabstract

contains input (sub-)selection data from a cube or lineset More...

Inheritance diagram for Seis::SelData:
[legend]

Public Types

typedef SelType Type
 

Public Member Functions

virtual ~SelData ()
 
virtual SelDataclone () const =0
 
virtual void copyFrom (const SelData &)=0
 
virtual Interval< int > crlRange () const
 
virtual int expectedNrTraces (bool for2d=false, const BinID *step=nullptr) const =0
 
virtual void extendH (const BinID &stepout, const BinID *stepoutstep=0)
 
virtual void extendZ (const Interval< float > &)=0
 
virtual void fillPar (IOPar &) const =0
 
Pos::GeomID geomID () const
 
virtual void include (const SelData &)=0
 
virtual Interval< int > inlRange () const
 
bool isAll () const
 
bool isOK (const BinID &bid) const
 
bool isOK (const Pos::IdxPair &) const
 will convert to either BinID or GeomID/trcnr More...
 
bool isOK (const TrcKey &) const
 will work in trckey's domain More...
 
bool isOK (Pos::GeomID gid, int trcnr) const
 
bool operator!= (const SelData &) const
 
bool operator== (const SelData &) const
 
int selRes (const BinID &bid) const
 
int selRes (Pos::GeomID gid, int trcnr) const
 
virtual bool setCrlRange (const Interval< int > &)
 
virtual void setGeomID (Pos::GeomID geomid)
 
virtual bool setInlRange (const Interval< int > &)
 
void setIsAll (bool yn=true)
 
virtual bool setZRange (const Interval< float > &)
 
virtual Type type () const =0
 
virtual void usePar (const IOPar &)=0
 
virtual Interval< float > zRange () const
 

Static Public Member Functions

static SelDataget (const IOPar &)
 fully filled More...
 
static SelDataget (const Pos::Provider &)
 filled; some defaults More...
 
static SelDataget (Type)
 empty More...
 
static void removeFromPar (IOPar &)
 

Protected Member Functions

 SelData ()
 
virtual void doExtendH (BinID stepout, BinID stepoutstep)=0
 
virtual int selRes2D (Pos::GeomID, int trcnr) const
 
virtual int selRes3D (const BinID &) const =0
 see class doc More...
 
int tracesInSI () const
 

Protected Attributes

Pos::GeomID geomid_
 
bool isall_
 

Detailed Description

contains input (sub-)selection data from a cube or lineset

This class exists so that without knowing the form of the subselection, other classes can find out whether a trace is included or not. The function selRes() returns an integer which gives more information than just yes/no. If 0 is returned, the position is included. If non-zero, the inline or crossline number can be one of:

0 - this number is OK by itself, but not the combination 1 - this number is the 'party-pooper' but there are selected posns with it 2 - No selected position has this number

Especially (2) is very useful: an entire inl or crl can be skipped from input. The return value of selRes is inl_result + 256 * crl_result. If you're not interested in all that, just use isOK().

<>

Member Typedef Documentation

◆ Type

Constructor & Destructor Documentation

◆ ~SelData()

virtual Seis::SelData::~SelData ( )
virtual

◆ SelData()

Seis::SelData::SelData ( )
protected

Member Function Documentation

◆ clone()

virtual SelData* Seis::SelData::clone ( ) const
pure virtual

◆ copyFrom()

virtual void Seis::SelData::copyFrom ( const SelData )
pure virtual

◆ crlRange()

virtual Interval<int> Seis::SelData::crlRange ( ) const
virtual

◆ doExtendH()

virtual void Seis::SelData::doExtendH ( BinID  stepout,
BinID  stepoutstep 
)
protectedpure virtual

◆ expectedNrTraces()

virtual int Seis::SelData::expectedNrTraces ( bool  for2d = false,
const BinID step = nullptr 
) const
pure virtual

◆ extendH()

virtual void Seis::SelData::extendH ( const BinID stepout,
const BinID stepoutstep = 0 
)
virtual

◆ extendZ()

virtual void Seis::SelData::extendZ ( const Interval< float > &  )
pure virtual

◆ fillPar()

virtual void Seis::SelData::fillPar ( IOPar ) const
pure virtual

◆ geomID()

Pos::GeomID Seis::SelData::geomID ( ) const
inline

◆ get() [1/3]

static SelData* Seis::SelData::get ( const IOPar )
static

fully filled

◆ get() [2/3]

static SelData* Seis::SelData::get ( const Pos::Provider )
static

filled; some defaults

◆ get() [3/3]

static SelData* Seis::SelData::get ( Type  )
static

empty

◆ include()

virtual void Seis::SelData::include ( const SelData )
pure virtual

◆ inlRange()

virtual Interval<int> Seis::SelData::inlRange ( ) const
virtual

◆ isAll()

bool Seis::SelData::isAll ( ) const
inline

◆ isOK() [1/4]

bool Seis::SelData::isOK ( const BinID bid) const
inline

◆ isOK() [2/4]

bool Seis::SelData::isOK ( const Pos::IdxPair ) const

will convert to either BinID or GeomID/trcnr

◆ isOK() [3/4]

bool Seis::SelData::isOK ( const TrcKey ) const

will work in trckey's domain

◆ isOK() [4/4]

bool Seis::SelData::isOK ( Pos::GeomID  gid,
int  trcnr 
) const
inline

◆ operator!=()

bool Seis::SelData::operator!= ( const SelData ) const

◆ operator==()

bool Seis::SelData::operator== ( const SelData ) const

◆ removeFromPar()

static void Seis::SelData::removeFromPar ( IOPar )
static

◆ selRes() [1/2]

int Seis::SelData::selRes ( const BinID bid) const
inline

◆ selRes() [2/2]

int Seis::SelData::selRes ( Pos::GeomID  gid,
int  trcnr 
) const
inline

◆ selRes2D()

virtual int Seis::SelData::selRes2D ( Pos::GeomID  ,
int  trcnr 
) const
protectedvirtual

Reimplemented in Seis::TableSelData, and Seis::RangeSelData.

◆ selRes3D()

virtual int Seis::SelData::selRes3D ( const BinID ) const
protectedpure virtual

see class doc

Implemented in Seis::PolySelData, Seis::TableSelData, and Seis::RangeSelData.

◆ setCrlRange()

virtual bool Seis::SelData::setCrlRange ( const Interval< int > &  )
inlinevirtual

Reimplemented in Seis::RangeSelData.

◆ setGeomID()

virtual void Seis::SelData::setGeomID ( Pos::GeomID  geomid)
inlinevirtual

Reimplemented in Seis::RangeSelData.

◆ setInlRange()

virtual bool Seis::SelData::setInlRange ( const Interval< int > &  )
inlinevirtual

Reimplemented in Seis::RangeSelData.

◆ setIsAll()

void Seis::SelData::setIsAll ( bool  yn = true)
inline

◆ setZRange()

virtual bool Seis::SelData::setZRange ( const Interval< float > &  )
inlinevirtual

◆ tracesInSI()

int Seis::SelData::tracesInSI ( ) const
protected

◆ type()

virtual Type Seis::SelData::type ( ) const
pure virtual

◆ usePar()

virtual void Seis::SelData::usePar ( const IOPar )
pure virtual

◆ zRange()

virtual Interval<float> Seis::SelData::zRange ( ) const
virtual

Member Data Documentation

◆ geomid_

Pos::GeomID Seis::SelData::geomid_
protected

◆ isall_

bool Seis::SelData::isall_
protected

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