Generates a signal based on a user-supplied function. More...
Public Types | |
using | NumericType = typename SampleTypeHelpers::ElementType<SampleType>::Type |
The NumericType is the underlying primitive type used by the SampleType (which could be either a primitive or vector) | |
Public Member Functions | |
Oscillator ()=default | |
Creates an uninitialised oscillator. | |
Oscillator (const std::function< NumericType(NumericType)> &function, size_t lookupTableNumPoints=0) | |
Creates an oscillator with a periodic input function (-pi..pi). | |
bool | isInitialised () const noexcept |
Returns true if the Oscillator has been initialised. | |
void | initialise (const std::function< NumericType(NumericType)> &function, size_t lookupTableNumPoints=0) |
Initialises the oscillator with a waveform. | |
void | setFrequency (NumericType newFrequency, bool force=false) noexcept |
Sets the frequency of the oscillator. | |
NumericType | getFrequency () const noexcept |
Returns the current frequency of the oscillator. | |
void | prepare (const ProcessSpec &spec) noexcept |
Called before processing starts. | |
void | reset () noexcept |
Resets the internal state of the oscillator. | |
SampleType JUCE_VECTOR_CALLTYPE | processSample (SampleType input) noexcept |
Returns the result of processing a single sample. | |
template<typename ProcessContext> | |
void | process (const ProcessContext &context) noexcept |
Processes the input and output buffers supplied in the processing context. | |
Generates a signal based on a user-supplied function.
using dsp::Oscillator< SampleType >::NumericType = typename SampleTypeHelpers::ElementType<SampleType>::Type |
The NumericType is the underlying primitive type used by the SampleType (which could be either a primitive or vector)
|
default |
Creates an uninitialised oscillator.
Call initialise before first use.
dsp::Oscillator< SampleType >::Oscillator | ( | const std::function< NumericType(NumericType)> & | function, |
size_t | lookupTableNumPoints = 0 ) |
Creates an oscillator with a periodic input function (-pi..pi).
If lookup table is not zero, then the function will be approximated with a lookup table.
References initialise().
|
noexcept |
Returns true if the Oscillator has been initialised.
Referenced by process(), and processSample().
void dsp::Oscillator< SampleType >::initialise | ( | const std::function< NumericType(NumericType)> & | function, |
size_t | lookupTableNumPoints = 0 ) |
Initialises the oscillator with a waveform.
References MathConstants< FloatType >::pi, table, and x.
Referenced by Oscillator().
|
noexcept |
Sets the frequency of the oscillator.
|
noexcept |
Returns the current frequency of the oscillator.
|
noexcept |
Called before processing starts.
References reset().
|
noexcept |
Resets the internal state of the oscillator.
Referenced by prepare().
|
noexcept |
Returns the result of processing a single sample.
References isInitialised(), jassert, MathConstants< FloatType >::pi, and MathConstants< FloatType >::twoPi.
|
noexcept |
Processes the input and output buffers supplied in the processing context.
References isInitialised(), jassert, jmin(), MathConstants< FloatType >::pi, and MathConstants< FloatType >::twoPi.