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

#include <TimeWarper.h>

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

Public Member Functions

 LinearOutputStretchTimeWarper (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 mC1
 
double mC2
 

Detailed Description

Definition at line 141 of file TimeWarper.h.

Constructor & Destructor Documentation

◆ LinearOutputStretchTimeWarper()

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

Definition at line 97 of file TimeWarper.cpp.

99: mTimeWarper(tStart, 0.0, tEnd, 1.0), mTStart(tStart),
100 mC1((tEnd-tStart)/(rStart*log(rStart/rEnd))), mC2(rStart/rEnd)
101{
102 wxASSERT(rStart != rEnd);
103 wxASSERT(rStart > 0.0);
104 wxASSERT(rEnd > 0.0);
105 wxASSERT(tStart < tEnd);
106}
LinearTimeWarper mTimeWarper
Definition: TimeWarper.h:144

Member Function Documentation

◆ Warp()

double LinearOutputStretchTimeWarper::Warp ( double  originalTime) const
overridevirtual

Implements TimeWarper.

Definition at line 91 of file TimeWarper.cpp.

92{
93 double scaledTime = mTimeWarper.Warp(originalTime);
94 return mTStart + mC1 * (pow(mC2, scaledTime) - 1.0);
95}
double Warp(double originalTime) const override
Definition: TimeWarper.cpp:36

References mC1, mC2, mTimeWarper, mTStart, and LinearTimeWarper::Warp().

Here is the call graph for this function:

Member Data Documentation

◆ mC1

double LinearOutputStretchTimeWarper::mC1
private

Definition at line 146 of file TimeWarper.h.

Referenced by Warp().

◆ mC2

double LinearOutputStretchTimeWarper::mC2
private

Definition at line 147 of file TimeWarper.h.

Referenced by Warp().

◆ mTimeWarper

LinearTimeWarper LinearOutputStretchTimeWarper::mTimeWarper
private

Definition at line 144 of file TimeWarper.h.

Referenced by Warp().

◆ mTStart

double LinearOutputStretchTimeWarper::mTStart
private

Definition at line 145 of file TimeWarper.h.

Referenced by Warp().


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