OpenShot Audio Library | OpenShotAudio 0.3.2
Loading...
Searching...
No Matches
juce::SmoothedValueBase< SmoothedValueType > Class Template Reference

#include <juce_SmoothedValue.h>

Inheritance diagram for juce::SmoothedValueBase< SmoothedValueType >:
juce::SmoothedValue< float > juce::SmoothedValue< Type > juce::SmoothedValue< NumericType > juce::dsp::LogRampedValue< float > juce::SmoothedValue< FloatType, SmoothingType >

Public Types

using FloatType = typename FloatTypeHelper< SmoothedValueType >::Type
 

Public Member Functions

 SmoothedValueBase ()=default
 
bool isSmoothing () const noexcept
 
FloatType getCurrentValue () const noexcept
 
FloatType getTargetValue () const noexcept
 
void setCurrentAndTargetValue (FloatType newValue)
 
void applyGain (FloatType *samples, int numSamples) noexcept
 
void applyGain (FloatType *samplesOut, const FloatType *samplesIn, int numSamples) noexcept
 
void applyGain (AudioBuffer< FloatType > &buffer, int numSamples) noexcept
 

Protected Attributes

FloatType currentValue = 0
 
FloatType target = currentValue
 
int countdown = 0
 

Detailed Description

template<typename SmoothedValueType>
class juce::SmoothedValueBase< SmoothedValueType >

A base class for the smoothed value classes.

This class is used to provide common functionality to the SmoothedValue and dsp::LogRampedValue classes.

Definition at line 36 of file juce_SmoothedValue.h.

Member Typedef Documentation

◆ FloatType

Definition at line 55 of file juce_SmoothedValue.h.

Constructor & Destructor Documentation

◆ SmoothedValueBase()

juce::SmoothedValueBase< SmoothedValueType >::SmoothedValueBase ( )
default

Constructor.

◆ ~SmoothedValueBase()

Member Function Documentation

◆ applyGain() [1/3]

void juce::SmoothedValueBase< SmoothedValueType >::applyGain ( AudioBuffer< FloatType > &  buffer,
int  numSamples 
)
inlinenoexcept

Applies a smoothed gain to a buffer

Definition at line 126 of file juce_SmoothedValue.h.

◆ applyGain() [2/3]

void juce::SmoothedValueBase< SmoothedValueType >::applyGain ( FloatType *  samples,
int  numSamples 
)
inlinenoexcept

Applies a smoothed gain to a stream of samples S[i] *= gain

Parameters
samplesPointer to a raw array of samples
numSamplesLength of array of samples

Definition at line 89 of file juce_SmoothedValue.h.

Referenced by juce::dsp::Convolution::Pimpl::processSamples().

◆ applyGain() [3/3]

void juce::SmoothedValueBase< SmoothedValueType >::applyGain ( FloatType *  samplesOut,
const FloatType *  samplesIn,
int  numSamples 
)
inlinenoexcept

Computes output as a smoothed gain applied to a stream of samples. Sout[i] = Sin[i] * gain

Parameters
samplesOutA pointer to a raw array of output samples
samplesInA pointer to a raw array of input samples
numSamplesThe length of the array of samples

Definition at line 110 of file juce_SmoothedValue.h.

◆ getCurrentValue()

FloatType juce::SmoothedValueBase< SmoothedValueType >::getCurrentValue ( ) const
inlinenoexcept

Returns the current value of the ramp.

Definition at line 68 of file juce_SmoothedValue.h.

◆ getTargetValue()

FloatType juce::SmoothedValueBase< SmoothedValueType >::getTargetValue ( ) const
inlinenoexcept

Returns the target value towards which the smoothed value is currently moving.

Definition at line 72 of file juce_SmoothedValue.h.

Referenced by juce::dsp::Oscillator< SampleType >::getFrequency().

◆ isSmoothing()

◆ setCurrentAndTargetValue()

void juce::SmoothedValueBase< SmoothedValueType >::setCurrentAndTargetValue ( FloatType  newValue)
inline

Member Data Documentation

◆ countdown

Definition at line 167 of file juce_SmoothedValue.h.

◆ currentValue

FloatType juce::SmoothedValueBase< SmoothedValueType >::currentValue = 0
protected

Definition at line 165 of file juce_SmoothedValue.h.

◆ target

FloatType juce::SmoothedValueBase< SmoothedValueType >::target = currentValue
protected

Definition at line 166 of file juce_SmoothedValue.h.


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