Audacity 3.2.0
Public Member Functions | Private Attributes | List of all members
GeometricOutputTimeWarper Class Referencefinal

#include <TimeWarper.h>

Inheritance diagram for GeometricOutputTimeWarper:
[legend]
Collaboration diagram for GeometricOutputTimeWarper:
[legend]

Public Member Functions

 GeometricOutputTimeWarper (double tStart, double tEnd, double rStart, double rEnd)
 
double Warp (double originalTime) const override
 
- Public Member Functions inherited from TimeWarper
virtual ~TimeWarper ()
 
virtual double Warp (double originalTime) const =0
 

Private Attributes

LinearTimeWarper mTimeWarper
 
double mTStart
 
double mScale
 
double mC0
 

Detailed Description

Definition at line 167 of file TimeWarper.h.

Constructor & Destructor Documentation

◆ GeometricOutputTimeWarper()

GeometricOutputTimeWarper::GeometricOutputTimeWarper ( double  tStart,
double  tEnd,
double  rStart,
double  rEnd 
)

Definition at line 131 of file TimeWarper.cpp.

133: mTimeWarper(tStart, 0.0, tEnd, 1.0), mTStart(tStart),
134 mScale((tEnd-tStart)/(rEnd-rStart)), mC0((rEnd-rStart)/rStart)
135{
136 wxASSERT(rStart > 0.0);
137 wxASSERT(rEnd > 0.0);
138 wxASSERT(tStart < tEnd);
139}
LinearTimeWarper mTimeWarper
Definition: TimeWarper.h:170

Member Function Documentation

◆ Warp()

double GeometricOutputTimeWarper::Warp ( double  originalTime) const
overridevirtual

Implements TimeWarper.

Definition at line 125 of file TimeWarper.cpp.

126{
127 double scaledTime = mTimeWarper.Warp(originalTime);
128 return mTStart + mScale*log1p(mC0 * scaledTime);
129}
double Warp(double originalTime) const override
Definition: TimeWarper.cpp:36

References mC0, mScale, mTimeWarper, mTStart, and LinearTimeWarper::Warp().

Here is the call graph for this function:

Member Data Documentation

◆ mC0

double GeometricOutputTimeWarper::mC0
private

Definition at line 173 of file TimeWarper.h.

Referenced by Warp().

◆ mScale

double GeometricOutputTimeWarper::mScale
private

Definition at line 172 of file TimeWarper.h.

Referenced by Warp().

◆ mTimeWarper

LinearTimeWarper GeometricOutputTimeWarper::mTimeWarper
private

Definition at line 170 of file TimeWarper.h.

Referenced by Warp().

◆ mTStart

double GeometricOutputTimeWarper::mTStart
private

Definition at line 171 of file TimeWarper.h.

Referenced by Warp().


The documentation for this class was generated from the following files: