| OpendTect 8.0

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
EventTracker Class Reference
Algo

Tracker that tracks Min/Max & Zero crossings between valueseries. More...

`#include <valseriestracker.h>`

Inheritance diagram for EventTracker:
[legend]

## Public Types
enum | CompareMethod { None , SeedTrace , AdjacentParent }

## Public Member Functions
| EventTracker ()
| ~EventTracker ()
void | allowAmplitudeSignChange (bool)
float | allowedVariance () const
float | amplitudeThreshold () const
void | fillPar (IOPar &) const override
TypeSet< float > & | getAllowedVariances ()
TypeSet< float > & | getAmplitudeThresholds ()
CompareMethod | getCompareMethod () const
float | getRangeStep () const
bool | isAmplitudeSignChangeAllowed () const
bool | isOK () const override
void | normalizeSimilarityValues (bool yn)
bool | normalizesSimilarityValues () const
const Interval< float > & | permittedRange () const
float | quality () const override
void | setAllowedVariance (float v)
| Only used if not using absolute threshold.
void | setAllowedVariances (const TypeSet< float > &avs)
void | setAmplitudeThreshold (float th)
| Must be set if using absolute threshold.
void | setAmplitudeThresholds (const TypeSet< float > &)
void | setCompareMethod (CompareMethod)
void | setPermittedRange (const Interval< float > &rg)
void | setRangeStep (float step)
void | setSeed (const ValueSeries< float > *, int sz, float depth)
void | setSimilarityThreshold (float th)
void | setSimilarityWindow (const Interval< float > &rg)
void | setSnapToEvent (bool)
void | setTrackEvent (VSEvent::Type ev)
void | setUseAbsThreshold (bool abs)
float | similarityThreshold () const
const Interval< float > & | similarityWindow () const
bool | snap (const Interval< float > &amplrg)
bool | snap (float threshold)
bool | snapToEvent () const
bool | track () override
VSEvent::Type | trackEvent () const
const char * | type () override
bool | useAbsThreshold () const
bool | usePar (const IOPar &) override
void | useSimilarity (bool yn)
bool | usesSimilarity () const
Public Member Functions inherited from ValSeriesTracker
virtual | ~ValSeriesTracker ()
virtual void | setSource (const ValueSeries< float > *, int sz, float depth)
virtual void | setTarget (const ValueSeries< float > *, int sz, float initialdepth)
virtual float | targetDepth () const
virtual float | targetValue () const

## Static Public Member Functions
static const VSEvent::Type * | cEventTypes ()
static int | getEventTypeIdx (VSEvent::Type)
static const char ** | sEventNames ()
static const char * | sType ()

## Protected Member Functions
ValueSeriesEvent< float, float > | findExtreme (const ValueSeriesEvFinder< float, float > &, const Interval< float > &, float, float &, bool &, float &) const
ValueSeriesEvent< float, float > | findExtreme (const ValueSeriesEvFinder< float, float > &, const Interval< float > &zrg, const Interval< float > &amplrg, float &avgampl, bool &hasloopskips, float &troughampl) const
bool | findMaxSimilarity (int nrtests, int step, int nrgracetests, float &res, float &maxsim, bool &flatstart) const
bool | isTargetValueAllowed () const
Protected Member Functions inherited from ValSeriesTracker
| ValSeriesTracker ()

## Static Protected Member Functions
static const char * | sKeyAllowedVariance ()
static const char * | sKeyAllowedVariances ()
static const char * | sKeyAllowSignChg ()
static const char * | sKeyAttribID ()
static const char * | sKeyCompareMethod ()
static const char * | sKeyNormSimi ()
static const char * | sKeyPermittedRange ()
static const char * | sKeySimThreshold ()
static const char * | sKeySimWindow ()
static const char * | sKeySnapToEvent ()
static const char * | sKeyTrackByValue ()
static const char * | sKeyTrackEvent ()
static const char * | sKeyUseAbsThreshold ()
static const char * | sKeyValueThreshold ()
static const char * | sKeyValueThresholds ()

## Protected Attributes
bool | allowamplsignchg_
float | allowedvar_
TypeSet< float > | allowedvars_
float | ampthreshold_
TypeSet< float > | ampthresholds_
float | compareampl_
CompareMethod | comparemethod_
bool | dosnap_
VSEvent::Type | evtype_
bool | normalizesimi_
Interval< float > | permrange_
float | quality_
float | rangestep_
float | seeddepth_
int | seedsize_
const ValueSeries< float > * | seedvs_
float | similaritythreshold_
Interval< float > | similaritywin_
bool | useabsthreshold_
bool | usesimilarity_
Protected Attributes inherited from ValSeriesTracker
float | sourcedepth_
int | sourcesize_
const ValueSeries< float > * | sourcevs_
float | targetdepth_
int | targetsize_
float | targetvalue_
const ValueSeries< float > * | targetvs_

## Detailed Description

Tracker that tracks Min/Max & Zero crossings between valueseries.

<>

## Member Enumeration Documentation

## ◆ CompareMethod

enum EventTracker::CompareMethod

Enumerator
None |
SeedTrace |
AdjacentParent |

## Constructor & Destructor Documentation

## ◆ EventTracker()

EventTracker::EventTracker | ( |  | ) |

## ◆ ~EventTracker()

EventTracker::~EventTracker | ( |  | ) |

## Member Function Documentation

## ◆ allowAmplitudeSignChange()

void EventTracker::allowAmplitudeSignChange | ( | bool |  | ) |

## ◆ allowedVariance()

float EventTracker::allowedVariance | ( |  | ) | const

## ◆ amplitudeThreshold()

float EventTracker::amplitudeThreshold | ( |  | ) | const

## ◆ cEventTypes()

static const VSEvent::Type * EventTracker::cEventTypes | ( |  | ) |
| static

## ◆ fillPar()

void EventTracker::fillPar | ( | IOPar & |  | ) | const
| override virtual

Reimplemented from ValSeriesTracker.

## ◆ findExtreme() [1/2]

ValueSeriesEvent< float, float > EventTracker::findExtreme | ( | const ValueSeriesEvFinder< float, float > & | ,
|  | const Interval< float > & | ,
|  | float | ,
|  | float & | ,
|  | bool & | ,
|  | float & | ) const
| protected

## ◆ findExtreme() [2/2]

ValueSeriesEvent< float, float > EventTracker::findExtreme | ( | const ValueSeriesEvFinder< float, float > & | ,
|  | const Interval< float > & | zrg,
|  | const Interval< float > & | amplrg,
|  | float & | avgampl,
|  | bool & | hasloopskips,
|  | float & | troughampl ) const
| protected

## ◆ findMaxSimilarity()

bool EventTracker::findMaxSimilarity | ( | int | nrtests,
|  | int | step,
|  | int | nrgracetests,
|  | float & | res,
|  | float & | maxsim,
|  | bool & | flatstart ) const
| protected

## ◆ getAllowedVariances()

TypeSet< float > & EventTracker::getAllowedVariances | ( |  | ) |

## ◆ getAmplitudeThresholds()

TypeSet< float > & EventTracker::getAmplitudeThresholds | ( |  | ) |

## ◆ getCompareMethod()

CompareMethod EventTracker::getCompareMethod | ( |  | ) | const

## ◆ getEventTypeIdx()

static int EventTracker::getEventTypeIdx | ( | VSEvent::Type |  | ) |
| static

## ◆ getRangeStep()

float EventTracker::getRangeStep | ( |  | ) | const
| inline

## ◆ isAmplitudeSignChangeAllowed()

bool EventTracker::isAmplitudeSignChangeAllowed | ( |  | ) | const

If true, a peak can have a negative amplitude value, and a trough can have a positive amplitude value.

## ◆ isOK()

bool EventTracker::isOK | ( |  | ) | const
| override virtual

Returns
  whether the settings are OK, and it is possible to track.

Reimplemented from ValSeriesTracker.

## ◆ isTargetValueAllowed()

bool EventTracker::isTargetValueAllowed | ( |  | ) | const
| protected

## ◆ normalizeSimilarityValues()

void EventTracker::normalizeSimilarityValues | ( | bool | yn | ) |

## ◆ normalizesSimilarityValues()

bool EventTracker::normalizesSimilarityValues | ( |  | ) | const

## ◆ permittedRange()

const Interval< float > & EventTracker::permittedRange | ( |  | ) | const

## ◆ quality()

float EventTracker::quality | ( |  | ) | const
| inline override virtual

Reimplemented from ValSeriesTracker.

## ◆ setAllowedVariance()

void EventTracker::setAllowedVariance | ( | float | v | ) |

Only used if not using absolute threshold.

## ◆ setAllowedVariances()

void EventTracker::setAllowedVariances | ( | const TypeSet< float > & | avs | ) |

## ◆ setAmplitudeThreshold()

void EventTracker::setAmplitudeThreshold | ( | float | th | ) |

Must be set if using absolute threshold.

## ◆ setAmplitudeThresholds()

void EventTracker::setAmplitudeThresholds | ( | const TypeSet< float > & |  | ) |

## ◆ setCompareMethod()

void EventTracker::setCompareMethod | ( | CompareMethod |  | ) |

## ◆ setPermittedRange()

void EventTracker::setPermittedRange | ( | const Interval< float > & | rg | ) |

## ◆ setRangeStep()

void EventTracker::setRangeStep | ( | float | step | ) |
| inline

## ◆ setSeed()

void EventTracker::setSeed | ( | const ValueSeries< float > * | ,
|  | int | sz,
|  | float | depth )

## ◆ setSimilarityThreshold()

void EventTracker::setSimilarityThreshold | ( | float | th | ) |

## ◆ setSimilarityWindow()

void EventTracker::setSimilarityWindow | ( | const Interval< float > & | rg | ) |

## ◆ setSnapToEvent()

void EventTracker::setSnapToEvent | ( | bool |  | ) |

## ◆ setTrackEvent()

void EventTracker::setTrackEvent | ( | VSEvent::Type | ev | ) |

- VSEvent::Max Will find max event within the permitted range where the amplitude is higher than the threshold.
- VSEvent::Min Will find minimum event within the permitted range where the amplitude is lower than the threshold.
- VSEvent::ZCNegPos Will find zerocrossing (Neg to Pos ) event within the permitted range. No amplitude threshold is used.
- VSEvent::ZCPosNeg Will find zerocrossing (Pos to Neg) event within the permitted range. No amplitude threshold is used.

## ◆ setUseAbsThreshold()

void EventTracker::setUseAbsThreshold | ( | bool | abs | ) |

If on, the amplitude threshold is set by setAmplitudeThreshold(). If off, the amplitude threshold is set by (1-allowedVariance()) * compareamplitude. The compare amplitude is either extracted from the seed valseries or from source valseries.

## ◆ sEventNames()

static const char ** EventTracker::sEventNames | ( |  | ) |
| static

## ◆ similarityThreshold()

float EventTracker::similarityThreshold | ( |  | ) | const

## ◆ similarityWindow()

const Interval< float > & EventTracker::similarityWindow | ( |  | ) | const

## ◆ sKeyAllowedVariance()

static const char * EventTracker::sKeyAllowedVariance | ( |  | ) |
| static protected

## ◆ sKeyAllowedVariances()

static const char * EventTracker::sKeyAllowedVariances | ( |  | ) |
| static protected

## ◆ sKeyAllowSignChg()

static const char * EventTracker::sKeyAllowSignChg | ( |  | ) |
| static protected

## ◆ sKeyAttribID()

static const char * EventTracker::sKeyAttribID | ( |  | ) |
| static protected

## ◆ sKeyCompareMethod()

static const char * EventTracker::sKeyCompareMethod | ( |  | ) |
| static protected

## ◆ sKeyNormSimi()

static const char * EventTracker::sKeyNormSimi | ( |  | ) |
| static protected

## ◆ sKeyPermittedRange()

static const char * EventTracker::sKeyPermittedRange | ( |  | ) |
| static protected

## ◆ sKeySimThreshold()

static const char * EventTracker::sKeySimThreshold | ( |  | ) |
| static protected

## ◆ sKeySimWindow()

static const char * EventTracker::sKeySimWindow | ( |  | ) |
| static protected

## ◆ sKeySnapToEvent()

static const char * EventTracker::sKeySnapToEvent | ( |  | ) |
| static protected

## ◆ sKeyTrackByValue()

static const char * EventTracker::sKeyTrackByValue | ( |  | ) |
| static protected

## ◆ sKeyTrackEvent()

static const char * EventTracker::sKeyTrackEvent | ( |  | ) |
| static protected

## ◆ sKeyUseAbsThreshold()

static const char * EventTracker::sKeyUseAbsThreshold | ( |  | ) |
| static protected

## ◆ sKeyValueThreshold()

static const char * EventTracker::sKeyValueThreshold | ( |  | ) |
| static protected

## ◆ sKeyValueThresholds()

static const char * EventTracker::sKeyValueThresholds | ( |  | ) |
| static protected

## ◆ snap() [1/2]

bool EventTracker::snap | ( | const Interval< float > & | amplrg | ) |

## ◆ snap() [2/2]

bool EventTracker::snap | ( | float | threshold | ) |

## ◆ snapToEvent()

bool EventTracker::snapToEvent | ( |  | ) | const

## ◆ sType()

static const char * EventTracker::sType | ( |  | ) |
| inline static

## ◆ track()

bool EventTracker::track | ( |  | ) |
| override virtual

Calculates a new value for targetdepth_.

Implements ValSeriesTracker.

## ◆ trackEvent()

VSEvent::Type EventTracker::trackEvent | ( |  | ) | const

## ◆ type()

const char * EventTracker::type | ( |  | ) |
| inline override virtual

Implements ValSeriesTracker.

## ◆ useAbsThreshold()

bool EventTracker::useAbsThreshold | ( |  | ) | const

## ◆ usePar()

bool EventTracker::usePar | ( | const IOPar & |  | ) |
| override virtual

Reimplemented from ValSeriesTracker.

## ◆ useSimilarity()

void EventTracker::useSimilarity | ( | bool | yn | ) |

Snaps at nearest event that is in permitted range and where the amplitude meets the threshold criterion. Only needs target data.

## ◆ usesSimilarity()

bool EventTracker::usesSimilarity | ( |  | ) | const

## Member Data Documentation

## ◆ allowamplsignchg_

bool EventTracker::allowamplsignchg_
| protected

## ◆ allowedvar_

float EventTracker::allowedvar_
| protected

## ◆ allowedvars_

TypeSet<float> EventTracker::allowedvars_
| protected

## ◆ ampthreshold_

float EventTracker::ampthreshold_
| protected

## ◆ ampthresholds_

TypeSet<float> EventTracker::ampthresholds_
| protected

## ◆ compareampl_

float EventTracker::compareampl_
| protected

## ◆ comparemethod_

CompareMethod EventTracker::comparemethod_
| protected

## ◆ dosnap_

bool EventTracker::dosnap_
| protected

## ◆ evtype_

VSEvent::Type EventTracker::evtype_
| protected

## ◆ normalizesimi_

bool EventTracker::normalizesimi_
| protected

## ◆ permrange_

Interval<float> EventTracker::permrange_
| protected

## ◆ quality_

float EventTracker::quality_
| protected

## ◆ rangestep_

float EventTracker::rangestep_
| protected

## ◆ seeddepth_

float EventTracker::seeddepth_
| protected

## ◆ seedsize_

int EventTracker::seedsize_
| protected

## ◆ seedvs_

const ValueSeries<float>* EventTracker::seedvs_
| protected

## ◆ similaritythreshold_

float EventTracker::similaritythreshold_
| protected

## ◆ similaritywin_

Interval<float> EventTracker::similaritywin_
| protected

## ◆ useabsthreshold_

bool EventTracker::useabsthreshold_
| protected

## ◆ usesimilarity_

bool EventTracker::usesimilarity_
| protected

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