OpendTect  6.3
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
Well::D2TModel Class Reference

Depth to time model. More...

Inheritance diagram for Well::D2TModel:
[legend]

Public Types

typedef ValueType TWTType
 
typedef TWTType VelType
 
typedef ValueIntvType TWTIntvType
 
typedef ValueSetType TWTSetType
 
- Public Types inherited from Well::DahObj
typedef float ZType
 
typedef TypeSet< ZTypeZSetType
 
typedef Interval< ZTypeZIntvType
 
typedef ZSetType::size_type size_type
 
typedef size_type IdxType
 
typedef IntegerID< IdxTypePointID
 
typedef float ValueType
 
typedef TypeSet< ValueTypeValueSetType
 
typedef Interval< ValueTypeValueIntvType
 
- Public Types inherited from Monitorable
typedef int ChangeType
 
typedef int64_t IDType
 
typedef int64_t DirtyCountType
 
typedef CNotifier< Monitorable, ChangeDataChangeDataNotifier
 

Public Member Functions

 D2TModel (const char *nm=0)
 
 ~D2TModel ()
 
 mDeclMonitorableAssignment (D2TModel)
 
 mDeclInstanceCreatedNotifierAccess (D2TModel)
 
virtual void getData (ZSetType &, TWTSetType &) const
 
 mImplSimpleMonitoredGetSet (inline, desc, setDesc, BufferString, desc_, cParsChange())
 
 mImplSimpleMonitoredGetSet (inline, dataSource, setDataSource, BufferString, datasource_, cParsChange())
 
TWTType getTime (ZType, const Track &) const
 
ZType getDepth (TWTType, const Track &) const
 
ZType getDah (TWTType, const Track &) const
 
double getVelocityForDah (ZType, const Track &) const
 
double getVelocityForDepth (ZType, const Track &) const
 
double getVelocityForTwt (TWTType, const Track &) const
 
bool getTimeDepthModel (const Well::Data &, TimeDepthModel &) const
 
ValueType t (PointID id) const
 
void setData (const ZSetType &, const ValueSetType &)
 
void makeFromTrack (const Track &, VelType cstvel, VelType replvel)
 
bool ensureValid (const Well::Data &, uiString &errmsg, TypeSet< double > *zvals=0, TypeSet< double > *tvals=0)
 
bool calibrateBy (const D2TModel &)
 returns whether any change was made More...
 
- Public Member Functions inherited from Well::DahObj
 DahObj (const char *nm=0)
 
virtual ~DahObj ()
 
 mDeclInstanceCreatedNotifierAccess (DahObj)
 
 mDeclAbstractMonitorableAssignment (DahObj)
 
size_type size () const
 
bool isEmpty () const
 
ZType dah (PointID) const
 
ZType firstDah () const
 
ZType lastDah () const
 
ValueType value (PointID) const
 
ValueType valueAt (ZType, bool no_undefs=false) const
 
ValueType firstValue (bool no_undefs=false) const
 
ValueType lastValue (bool no_undefs=false) const
 
ZIntvType dahRange () const
 
ZType dahStep (bool min_else_average) const
 
void getDahValues (ZSetType &) const
 
virtual bool valsAreCodes () const
 
PointID firstID () const
 
PointID lastID () const
 
PointID nextID (PointID) const
 
PointID prevID (PointID) const
 
PointID nearestID (ZType) const
 
void setEmpty ()
 
void setDah (PointID, ZType)
 
bool setValue (PointID, ValueType)
 
PointID setValueAt (ZType, ValueType)
 
void remove (PointID)
 
void deInterpolate ()
 Remove unnecessary points. More...
 
void shiftDahFrom (PointID, ZType)
 
PointID pointIDFor (IdxType) const
 
IdxType indexOf (PointID) const
 
IdxType indexOf (ZType) const
 
ZType dahByIdx (IdxType) const
 
ValueType valueByIdx (IdxType) const
 
void removeByIdx (IdxType)
 
- Public Member Functions inherited from NamedMonitorable
 NamedMonitorable (const char *nm=0)
 
 NamedMonitorable (const NamedObject &)
 
virtual ~NamedMonitorable ()
 
 NamedMonitorable (const NamedMonitorable &)
 
NamedMonitorableoperator= (const NamedMonitorable &)
 
bool operator== (const NamedMonitorable &) const
 
bool operator!= (const NamedMonitorable &oth) const
 
virtual NamedMonitorableclone () const
 
ChangeType compareWith (const Monitorable &) const
 
virtual NamedMonitorablegetClone () const
 
virtual BufferString getName () const
 
virtual void setName (const char *)
 
- Public Member Functions inherited from Monitorable
 Monitorable (const Monitorable &)
 
virtual ~Monitorable ()
 
Monitorableoperator= (const Monitorable &)
 
bool operator== (const Monitorable &) const
 
virtual ChangeDataNotifierobjectChanged () const
 
virtual Notifier< Monitorable > & objectToBeDeleted () const
 
virtual void touch () const
 
virtual DirtyCountType dirtyCount () const
 
void sendChangeNotification (const ChangeData &) const
 
void sendEntireObjectChangeNotification () const
 
void transferNotifsTo (const Monitorable &, const CallBacker *onlyfor=0) const
 
- Public Member Functions inherited from CallBacker
 CallBacker ()
 
 CallBacker (const CallBacker &)
 
virtual ~CallBacker ()
 
bool attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
 
bool attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
 
void detachCB (const NotifierAccess &, const CallBack &) const
 
void detachCB (const NotifierAccess *notif, const CallBack &cb) const
 
bool isNotifierAttached (const NotifierAccess *) const
 Only for debugging purposes, don't use. More...
 
virtual bool isCapsule () const
 
void stopReceivingNotifications () const
 
- Public Member Functions inherited from NamedObject
 NamedObject (const char *nm=0)
 
 NamedObject (const NamedObject &oth)
 
virtual ~NamedObject ()
 
NamedObjectoperator= (const NamedObject &)
 
bool operator== (const NamedObject &oth) const
 
virtual const OD::Stringname () const
 
bool getNameFromPar (const IOPar &)
 
void putNameInPar (IOPar &) const
 

Static Public Member Functions

static const char * sKeyTimeWell ()
 for well that is only known in time More...
 
static const char * sKeyDataSrc ()
 
- Static Public Member Functions inherited from Well::DahObj
static ChangeType cParsChange ()
 
static ChangeType cPointAdd ()
 
static ChangeType cDahChange ()
 
static ChangeType cValueChange ()
 
static ChangeType cPointRemove ()
 
static ZType dahEps ()
 
- Static Public Member Functions inherited from NamedMonitorable
static Notifier< NamedMonitorable > & instanceCreated ()
 
static ChangeType cNameChange ()
 
- Static Public Member Functions inherited from Monitorable
static Notifier< Monitorable > & instanceCreated ()
 defines static instanceCreated() More...
 
static ChangeType cEntireObjectChange ()
 
static ChangeType cNoChange ()
 
static IDType cUnspecChgID ()
 
static IDType cEntireObjectChgID ()
 
static ChangeType changeNotificationTypeOf (CallBacker *)
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 

Protected Member Functions

virtual bool doSet (IdxType, ValueType)
 
virtual PointID doInsAtDah (ZType dh, ValueType val)
 
virtual ValueType gtVal (IdxType idx) const
 
virtual void removeAux (int idx)
 
virtual void eraseAux ()
 
ZType gtDepth (float, const Track &) const
 
double gtVelocityForTwt (float, const Track &) const
 
bool gtVelocityBoundsForDah (ZType d_ah, const Track &, Interval< double > &depths, Interval< float > &times) const
 
bool gtVelocityBoundsForTwt (float twt, const Track &, Interval< double > &depths, Interval< float > &times) const
 
int gtVelocityIdx (ZType pos, const Track &, bool posisdah=true) const
 
ZType getDepth (float time) const
 Legacy, misleading name. Use getDah(). More...
 
bool getOldVelocityBoundsForDah (ZType d_ah, const Track &, Interval< double > &depths, Interval< float > &times) const
 Read legacy incorrect time-depth model. More...
 
bool getOldVelocityBoundsForTwt (float twt, const Track &, Interval< double > &depths, Interval< float > &times) const
 Read legacy incorrect time-depth model. More...
 
- Protected Member Functions inherited from Well::DahObj
virtual void removeAux (IdxType)=0
 
void doRemove (IdxType)
 
void doSetEmpty ()
 
PointID doIns (ZType dh, ValueType val, ValueSetType &, bool ascendingvalsonly)
 
bool doSetData (const ZSetType &, const ValueSetType &, ValueSetType &)
 
size_type gtSize () const
 
IdxType gtIsEmpty () const
 
PointID gtNeighbourID (PointID, bool) const
 
PointID gtNewPointID () const
 
IdxType gtIndexOf (ZType) const
 
IdxType gtIdx (PointID) const
 
ZType gtDah (IdxType) const
 
ValueType gtValueAt (ZType, bool noudfs) const
 
- Protected Member Functions inherited from NamedMonitorable
void copyAll (const NamedMonitorable &)
 
- Protected Member Functions inherited from Monitorable
 Monitorable ()
 
void copyAll (const Monitorable &)
 
void sendChgNotif (AccessLocker &, const ChangeData &) const
 calls objectChanged with released lock More...
 
void sendChgNotif (AccessLocker &, ChangeType, IDType) const
 calls objectChanged with released lock More...
 
void sendDelNotif () const
 
void stopChangeNotifications () const
 
void resumeChangeNotifications () const
 
template<class T >
getMemberSimple (const T &) const
 the get function used by mImplSimpleMonitoredGet More...
 
template<class TMember , class TSetTo >
void setMemberSimple (TMember &, TSetTo, ChangeType, IDType)
 the set function used by mImplSimpleMonitoredSet More...
 
- Protected Member Functions inherited from CallBacker
void detachAllNotifiers () const
 Call from the destructor of your inherited object. More...
 

Static Protected Member Functions

static bool getTVDD2TModel (Well::D2TModel &, const Well::Data &, TypeSet< double > &zvals, TypeSet< double > &tvals, uiString &errmsg, uiString &warnmsg)
 
static void convertDepthsToMD (const Well::Track &, const TypeSet< double > &zvals, ZSetType &)
 
static void shiftTimesIfNecessary (TypeSet< double > &tvals, double wllheadz, double vrepl, double origintwtinfile, uiString &msg)
 
static void checkReplacementVelocity (Well::Info &, double vreplinfile, uiString &msg)
 
- Static Protected Member Functions inherited from Well::DahObj
static bool areEqualDahs (ZType, ZType)
 

Protected Attributes

TWTSetType times_
 
BufferString desc_
 
BufferString datasource_
 
- Protected Attributes inherited from Well::DahObj
ZSetType dahs_
 
TypeSet< PointIDptids_
 
Threads::Atomic< IdxTypecurptidnr_
 
- Protected Attributes inherited from Monitorable
Threads::Lock accesslock_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

Private Member Functions

 mODTextTranslationClass (D2TModel)
 

Friends

class D2TModelIter
 

Additional Inherited Members

- Protected Types inherited from Monitorable
typedef Threads::Atomic< DirtyCountTypeDirtyCounter
 

Detailed Description

Depth to time model.

Member Typedef Documentation

Constructor & Destructor Documentation

Well::D2TModel::D2TModel ( const char *  nm = 0)
Well::D2TModel::~D2TModel ( )

Member Function Documentation

bool Well::D2TModel::calibrateBy ( const D2TModel )

returns whether any change was made

static void Well::D2TModel::checkReplacementVelocity ( Well::Info ,
double  vreplinfile,
uiString msg 
)
staticprotected
static void Well::D2TModel::convertDepthsToMD ( const Well::Track ,
const TypeSet< double > &  zvals,
ZSetType  
)
staticprotected
virtual PointID Well::D2TModel::doInsAtDah ( ZType  dh,
ValueType  val 
)
inlineprotectedvirtual

Implements Well::DahObj.

virtual bool Well::D2TModel::doSet ( IdxType  ,
ValueType   
)
protectedvirtual

Implements Well::DahObj.

bool Well::D2TModel::ensureValid ( const Well::Data ,
uiString errmsg,
TypeSet< double > *  zvals = 0,
TypeSet< double > *  tvals = 0 
)

Returns corrected model if necessary May eventually also correct info().replvel

virtual void Well::D2TModel::eraseAux ( )
inlineprotectedvirtual

Implements Well::DahObj.

ZType Well::D2TModel::getDah ( TWTType  ,
const Track  
) const
virtual void Well::D2TModel::getData ( ZSetType ,
TWTSetType  
) const
virtual

Implements Well::DahObj.

ZType Well::D2TModel::getDepth ( TWTType  ,
const Track  
) const
ZType Well::D2TModel::getDepth ( float  time) const
inlineprotected

Legacy, misleading name. Use getDah().

bool Well::D2TModel::getOldVelocityBoundsForDah ( ZType  d_ah,
const Track ,
Interval< double > &  depths,
Interval< float > &  times 
) const
protected

Read legacy incorrect time-depth model.

bool Well::D2TModel::getOldVelocityBoundsForTwt ( float  twt,
const Track ,
Interval< double > &  depths,
Interval< float > &  times 
) const
protected

Read legacy incorrect time-depth model.

TWTType Well::D2TModel::getTime ( ZType  ,
const Track  
) const
bool Well::D2TModel::getTimeDepthModel ( const Well::Data ,
TimeDepthModel  
) const
static bool Well::D2TModel::getTVDD2TModel ( Well::D2TModel ,
const Well::Data ,
TypeSet< double > &  zvals,
TypeSet< double > &  tvals,
uiString errmsg,
uiString warnmsg 
)
staticprotected
double Well::D2TModel::getVelocityForDah ( ZType  ,
const Track  
) const
double Well::D2TModel::getVelocityForDepth ( ZType  ,
const Track  
) const
double Well::D2TModel::getVelocityForTwt ( TWTType  ,
const Track  
) const
ZType Well::D2TModel::gtDepth ( float  ,
const Track  
) const
protected
virtual ValueType Well::D2TModel::gtVal ( IdxType  idx) const
inlineprotectedvirtual

Implements Well::DahObj.

bool Well::D2TModel::gtVelocityBoundsForDah ( ZType  d_ah,
const Track ,
Interval< double > &  depths,
Interval< float > &  times 
) const
protected
bool Well::D2TModel::gtVelocityBoundsForTwt ( float  twt,
const Track ,
Interval< double > &  depths,
Interval< float > &  times 
) const
protected

Gives index of next dtpoint at or after dah.

double Well::D2TModel::gtVelocityForTwt ( float  ,
const Track  
) const
protected
int Well::D2TModel::gtVelocityIdx ( ZType  pos,
const Track ,
bool  posisdah = true 
) const
protected
void Well::D2TModel::makeFromTrack ( const Track ,
VelType  cstvel,
VelType  replvel 
)

cstvel: velocity of the TD model replvel: Replacement velocity, above SRD

Well::D2TModel::mDeclInstanceCreatedNotifierAccess ( D2TModel  )
Well::D2TModel::mDeclMonitorableAssignment ( D2TModel  )
Well::D2TModel::mImplSimpleMonitoredGetSet ( inline  ,
desc  ,
setDesc  ,
BufferString  ,
desc_  ,
cParsChange()   
)
Well::D2TModel::mImplSimpleMonitoredGetSet ( inline  ,
dataSource  ,
setDataSource  ,
BufferString  ,
datasource_  ,
cParsChange()   
)
Well::D2TModel::mODTextTranslationClass ( D2TModel  )
private
virtual void Well::D2TModel::removeAux ( int  idx)
inlineprotectedvirtual
void Well::D2TModel::setData ( const ZSetType ,
const ValueSetType  
)
static void Well::D2TModel::shiftTimesIfNecessary ( TypeSet< double > &  tvals,
double  wllheadz,
double  vrepl,
double  origintwtinfile,
uiString msg 
)
staticprotected
static const char* Well::D2TModel::sKeyDataSrc ( )
static
static const char* Well::D2TModel::sKeyTimeWell ( )
static

for well that is only known in time

ValueType Well::D2TModel::t ( PointID  id) const
inline

Friends And Related Function Documentation

friend class D2TModelIter
friend

Member Data Documentation

BufferString Well::D2TModel::datasource_
protected
BufferString Well::D2TModel::desc_
protected
TWTSetType Well::D2TModel::times_
protected

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