OpendTect-6_4  6.4
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
RayTracer1D Class Referenceabstract

Ray tracer in 1D. More...

Inheritance diagram for RayTracer1D:
[legend]

Classes

class  Setup
 

Public Member Functions

 mDefineFactoryInClass (RayTracer1D, factory)
 
 ~RayTracer1D ()
 
virtual RayTracer1D::Setupsetup ()=0
 
virtual const RayTracer1D::Setupsetup () const =0
 
virtual bool hasSameParams (const RayTracer1D &) const
 
bool setModel (const ElasticModel &)
 
const ElasticModelgetModel () const
 
void setOffsets (const TypeSet< float > &offsets)
 
void getOffsets (TypeSet< float > &offsets) const
 
bool isPSWithoutZeroOffset () const
 
uiString errMsg () const
 
float getSinAngle (int layeridx, int offsetidx) const
 
bool getReflectivity (int offset, ReflectivityModel &) const
 
bool getTDModel (int offset, TimeDepthModel &) const
 
bool getZeroOffsTDModel (TimeDepthModel &) const
 
virtual void fillPar (IOPar &) const
 
virtual bool usePar (const IOPar &)
 
float getDepth (int layer) const
 
float getTime (int layer, int offset) const
 
- Public Member Functions inherited from ParallelTask
virtual ~ParallelTask ()
 
bool execute ()
 
virtual bool executeParallel (bool parallel)
 
void setProgressMeter (ProgressMeter *)
 Must be called before execute() More...
 
int64_t nrDone () const
 May be -1, i.e. class does not report nrdone. More...
 
int64_t totalNr () const
 
- Public Member Functions inherited from Task
virtual ~Task ()
 
virtual uiString uiMessage () const
 will be message() again in 7.x More...
 
virtual uiString uiNrDoneText () const
 will be nrDoneText() in 7.x More...
 
virtual void enableWorkControl (bool=true)
 Must be called before execute() More...
 
bool workControlEnabled () const
 
virtual void controlWork (Control)
 
virtual Control getState () const
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=0)
 
 NamedObject (const NamedObject *linkedto)
 
 NamedObject (const NamedObject &)
 
virtual ~NamedObject ()
 
void setLinkedTo (NamedObject *)
 
bool operator== (const NamedObject &oth) const
 
virtual const OD::Stringname () const
 
virtual const OD::StringannotName () const
 
virtual void setName (const char *)
 
void setCleanName (const char *)
 cleans string first More...
 
void deleteNotify (const CallBack &)
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (NotifierAccess &, const CallBack &, bool onlyifnew=false)
 
bool attachCB (NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false)
 
void detachCB (NotifierAccess &, const CallBack &)
 
void detachCB (NotifierAccess *notif, const CallBack &cb)
 
bool isNotifierAttached (NotifierAccess *) const
 Only for debugging purposes, don't use. More...
 

Static Public Member Functions

static RayTracer1DcreateInstance (const IOPar &, uiString &)
 
static const char * sKeyPWave ()
 
static const char * sKeyOffset ()
 
static const char * sKeyReflectivity ()
 
static const char * sKeyBlock ()
 
static const char * sKeyBlockRatio ()
 
static float cDefaultBlockRatio ()
 
static void setIOParsToZeroOffset (IOPar &iop)
 
- Static Public Member Functions inherited from ParallelTask
static uiString sPosFinished ()
 
static uiString sTrcFinished ()
 
- Static Public Member Functions inherited from Task
static uiString stdNrDoneText ()
 
static uiString uiStdNrDoneText ()
 

Protected Member Functions

 RayTracer1D ()
 
od_int64 nrIterations () const
 
virtual bool doPrepare (int)
 
virtual bool compute (int, int, float)
 
bool getTDM (const Array1D< float > &, TimeDepthModel &) const
 
void setZeroOffsetTWT ()
 
- Protected Member Functions inherited from ParallelTask
virtual int maxNrThreads () const
 
virtual int minThreadSize () const
 
virtual bool stopAllOnFailure () const
 
 ParallelTask (const char *nm=0)
 
 ParallelTask (const ParallelTask &)
 
int64_t calculateThreadSize (int64_t totalnr, int nrthreads, int thread) const
 
void addToNrDone (int64_t increment)
 
void quickAddToNrDone (int64_t loopidx)
 
void resetNrDone ()
 
- Protected Member Functions inherited from Task
 Task (const char *nm=0)
 
virtual bool shouldContinue ()
 
- Protected Member Functions inherited from CallBacker
void detachAllNotifiers ()
 Call from the destructor of your inherited object. More...
 

Protected Attributes

ElasticModel model_
 
TypeSet< float > offsets_
 
uiString errmsg_
 
TypeSet< int > offsetpermutation_
 
TypeSet< float > velmax_
 
TypeSet< float > depths_
 
Array2DImpl< float > * sini_
 
Array2DImpl< float > * twt_
 
Array1D< float > * zerooffstwt_
 
Array2DImpl< float_complex > * reflectivity_
 
- Protected Attributes inherited from Task
Control control_
 
Threads::ConditionVarworkcontrolcondvar_
 
- Protected Attributes inherited from NamedObject
BufferStringname_
 
NamedObjectlinkedto_
 
CallBackSetdelnotify_
 

Private Member Functions

 mODTextTranslationClass (RayTracer1D)
 

Additional Inherited Members

- Public Types inherited from Task
enum  Control { Run, Pause, Stop }
 

Detailed Description

Ray tracer in 1D.

Constructor & Destructor Documentation

RayTracer1D::~RayTracer1D ( )
RayTracer1D::RayTracer1D ( )
protected

Member Function Documentation

static float RayTracer1D::cDefaultBlockRatio ( )
static
virtual bool RayTracer1D::compute ( int  ,
int  ,
float   
)
protectedvirtual

Reimplemented in VrmsRayTracer1D.

static RayTracer1D* RayTracer1D::createInstance ( const IOPar ,
uiString  
)
static
virtual bool RayTracer1D::doPrepare ( int  nrthreads)
protectedvirtual

Called once, before any doWork is called.

Reimplemented from ParallelTask.

uiString RayTracer1D::errMsg ( ) const
inline
virtual void RayTracer1D::fillPar ( IOPar ) const
virtual
float RayTracer1D::getDepth ( int  layer) const
const ElasticModel& RayTracer1D::getModel ( ) const
inline
void RayTracer1D::getOffsets ( TypeSet< float > &  offsets) const
bool RayTracer1D::getReflectivity ( int  offset,
ReflectivityModel  
) const
float RayTracer1D::getSinAngle ( int  layeridx,
int  offsetidx 
) const
bool RayTracer1D::getTDM ( const Array1D< float > &  ,
TimeDepthModel  
) const
protected
bool RayTracer1D::getTDModel ( int  offset,
TimeDepthModel  
) const
float RayTracer1D::getTime ( int  layer,
int  offset 
) const
bool RayTracer1D::getZeroOffsTDModel ( TimeDepthModel ) const
virtual bool RayTracer1D::hasSameParams ( const RayTracer1D ) const
virtual
bool RayTracer1D::isPSWithoutZeroOffset ( ) const
RayTracer1D::mDefineFactoryInClass ( RayTracer1D  ,
factory   
)
RayTracer1D::mODTextTranslationClass ( RayTracer1D  )
private
od_int64 RayTracer1D::nrIterations ( ) const
protectedvirtual
Returns
the number of times the process should be run.

Implements ParallelTask.

static void RayTracer1D::setIOParsToZeroOffset ( IOPar iop)
static
bool RayTracer1D::setModel ( const ElasticModel )
void RayTracer1D::setOffsets ( const TypeSet< float > &  offsets)

<Note, if either p-wave or s-wave are undef, will fill them with Castagna to compute zoeppritz coeffs <!

virtual RayTracer1D::Setup& RayTracer1D::setup ( )
pure virtual

Implemented in VrmsRayTracer1D.

virtual const RayTracer1D::Setup& RayTracer1D::setup ( ) const
pure virtual

Implemented in VrmsRayTracer1D.

void RayTracer1D::setZeroOffsetTWT ( )
protected
static const char* RayTracer1D::sKeyBlock ( )
inlinestatic
static const char* RayTracer1D::sKeyBlockRatio ( )
inlinestatic
static const char* RayTracer1D::sKeyOffset ( )
inlinestatic
static const char* RayTracer1D::sKeyPWave ( )
inlinestatic
static const char* RayTracer1D::sKeyReflectivity ( )
inlinestatic
virtual bool RayTracer1D::usePar ( const IOPar )
virtual

Member Data Documentation

TypeSet<float> RayTracer1D::depths_
protected
uiString RayTracer1D::errmsg_
protected
ElasticModel RayTracer1D::model_
protected
TypeSet<int> RayTracer1D::offsetpermutation_
protected
TypeSet<float> RayTracer1D::offsets_
protected
Array2DImpl<float_complex>* RayTracer1D::reflectivity_
protected
Array2DImpl<float>* RayTracer1D::sini_
protected
Array2DImpl<float>* RayTracer1D::twt_
protected
TypeSet<float> RayTracer1D::velmax_
protected
Array1D<float>* RayTracer1D::zerooffstwt_
protected

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