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

#include <juce_SmoothedValue.h>

Inheritance diagram for juce::SmoothedValueBase< SmoothedValueType >:
[legend]

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.

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 124 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 87 of file juce_SmoothedValue.h.

◆ 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 108 of file juce_SmoothedValue.h.

◆ getCurrentValue()

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

Returns the current value of the ramp.

Definition at line 66 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 70 of file juce_SmoothedValue.h.

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

◆ isSmoothing()

◆ setCurrentAndTargetValue()

Member Data Documentation

◆ countdown

Definition at line 165 of file juce_SmoothedValue.h.

◆ currentValue

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

Definition at line 163 of file juce_SmoothedValue.h.

◆ target

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

Definition at line 164 of file juce_SmoothedValue.h.


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