Aviate Audio Multiverse Library
Public Member Functions | List of all members
Aviate::LowFrequencyOscillatorVector< T > Class Template Reference

The LFO is commonly used on modulation effects where some parameter (delay, volume, etc.) is modulated via waveform at a frequency below 20 Hz. More...

#include <LibBasicFunctions.h>

Public Member Functions

 LowFrequencyOscillatorVector ()
 Default constructor, uses SINE as default waveform.
 
 LowFrequencyOscillatorVector (Waveform waveform)
 Specifies the desired waveform at construction time. More...
 
virtual ~LowFrequencyOscillatorVector ()
 destructor
 
void setWaveform (Waveform waveform)
 Change the waveform. More...
 
void setRateAudio (float frequencyHz)
 Set the LFO rate in Hertz. More...
 
void setRateRatio (float ratio)
 Set the LFO rate as a fraction. More...
 
void setRoundnessFactor (float roundness)
 This value will control how much roundness is applied to sharp transition points in the waveform. Note this has no impact in the SINE waveform. More...
 
T * getNextVector ()
 Get the next waveform value. More...
 

Detailed Description

template<class T>
class Aviate::LowFrequencyOscillatorVector< T >

The LFO is commonly used on modulation effects where some parameter (delay, volume, etc.) is modulated via waveform at a frequency below 20 Hz.

Waveforms vary between -1.0f and +1.0f.

Template Parameters
thedata type of the oscillator

this LFO is for operating on vectors of audio block samples.

Constructor & Destructor Documentation

◆ LowFrequencyOscillatorVector()

Specifies the desired waveform at construction time.

Parameters
waveformspecifies desired waveform

Member Function Documentation

◆ getNextVector()

template<class T >
T* Aviate::LowFrequencyOscillatorVector< T >::getNextVector ( )

Get the next waveform value.

Returns
the next vector of phase values

◆ setRateAudio()

template<class T >
void Aviate::LowFrequencyOscillatorVector< T >::setRateAudio ( float  frequencyHz)

Set the LFO rate in Hertz.

Parameters
frequencyHzthe LFO frequency in Hertz

◆ setRateRatio()

template<class T >
void Aviate::LowFrequencyOscillatorVector< T >::setRateRatio ( float  ratio)

Set the LFO rate as a fraction.

Parameters
ratiothe radians/sample will be 2*pi*ratio

◆ setRoundnessFactor()

template<class T >
void Aviate::LowFrequencyOscillatorVector< T >::setRoundnessFactor ( float  roundness)

This value will control how much roundness is applied to sharp transition points in the waveform. Note this has no impact in the SINE waveform.

Parameters
roundnessa value between 0 and 1.0. This controls how much rounding is applied to sharp transitions.

◆ setWaveform()

template<class T >
void Aviate::LowFrequencyOscillatorVector< T >::setWaveform ( Waveform  waveform)

Change the waveform.

Parameters
waveformspecifies desired waveform

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