Loading...
Searching...
No Matches
juce::IIRFilterBase< Mutex > Class Template Reference

## Detailed Description

template<typename Mutex>
class juce::IIRFilterBase< Mutex >

An IIR filter that can perform low, high, or band-pass filtering on an audio signal.

See also
  IIRCoefficient, IIRFilterAudioSource

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

- juce_audio_basics/utilities/juce_IIRFilter.h

## Public Member Functions

| IIRFilterBase () noexcept
| Creates a filter.
| IIRFilterBase (const IIRFilterBase &) noexcept
| Creates a copy of another filter.
void | makeInactive () noexcept
| Clears the filter so that any incoming data passes through unchanged.
void | setCoefficients (const IIRCoefficients &newCoefficients) noexcept
| Applies a set of coefficients to this filter.
IIRCoefficients | getCoefficients () const noexcept
| Returns the coefficients that this filter is using.
void | reset () noexcept
| Resets the filter's processing pipeline, ready to start a new stream of data.
void | processSamples (float *samples, int numSamples) noexcept
| Performs the filter operation on the given set of samples.
float | processSingleSampleRaw (float sample) noexcept
| Processes a single sample, without any locking or checking.

## Protected Member Functions

IIRFilter & | operator= (const IIRFilter &)=delete

## Protected Attributes

Mutex | processLock
IIRCoefficients | coefficients
float | v1 = 0
float | v2 = 0
bool | active = false

## Constructors and Destructors

## IIRFilterBase() [1/2]

template<typename Mutex>

juce::IIRFilterBase< Mutex >::IIRFilterBase | ( |  | ) |

noexcept

Creates a filter.

Initially the filter is inactive, so will have no effect on samples that you process with it. Use the setCoefficients() method to turn it into the type of filter needed.

Referenced by IIRFilterBase().

## IIRFilterBase() [2/2]

template<typename Mutex>

juce::IIRFilterBase< Mutex >::IIRFilterBase | ( | const IIRFilterBase< Mutex > & |  | ) |

noexcept

Creates a copy of another filter.

References IIRFilterBase().

## Member Functions

## makeInactive()

template<typename Mutex>

void juce::IIRFilterBase< Mutex >::makeInactive | ( |  | ) |

noexcept

Clears the filter so that any incoming data passes through unchanged.

References makeInactive().

Referenced by makeInactive().

## setCoefficients()

template<typename Mutex>

void juce::IIRFilterBase< Mutex >::setCoefficients | ( | const IIRCoefficients & | newCoefficients | ) |

noexcept

Applies a set of coefficients to this filter.

References setCoefficients().

Referenced by setCoefficients().

## getCoefficients()

template<typename Mutex>

IIRCoefficients juce::IIRFilterBase< Mutex >::getCoefficients | ( |  | ) | const

inline noexcept

Returns the coefficients that this filter is using.

References coefficients, and getCoefficients().

Referenced by getCoefficients().

## reset()

template<typename Mutex>

void juce::IIRFilterBase< Mutex >::reset | ( |  | ) |

noexcept

Resets the filter's processing pipeline, ready to start a new stream of data.

Note that this clears the processing state, but the type of filter and its coefficients aren't changed. To put a filter into an inactive state, use the makeInactive() method.

## processSamples()

template<typename Mutex>

void juce::IIRFilterBase< Mutex >::processSamples | ( | float * | samples,
|  | int | numSamples )

noexcept

Performs the filter operation on the given set of samples.

References processSamples().

Referenced by processSamples().

## processSingleSampleRaw()

template<typename Mutex>

float juce::IIRFilterBase< Mutex >::processSingleSampleRaw | ( | float | sample | ) |

noexcept

Processes a single sample, without any locking or checking.

Use this if you need fast processing of a single value, but be aware that this isn't thread-safe in the way that processSamples() is.

References processSingleSampleRaw().

Referenced by processSingleSampleRaw().

## operator=()

template<typename Mutex>

IIRFilter & juce::IIRFilterBase< Mutex >::operator= | ( | const IIRFilter & |  | ) |

protected delete

References JUCE_LEAK_DETECTOR.

## Member Data Documentation

## processLock

template<typename Mutex>

Mutex juce::IIRFilterBase< Mutex >::processLock

protected

## coefficients

template<typename Mutex>

IIRCoefficients juce::IIRFilterBase< Mutex >::coefficients

protected

Referenced by getCoefficients().

## v1

template<typename Mutex>

float juce::IIRFilterBase< Mutex >::v1 = 0

protected

## v2

template<typename Mutex>

float juce::IIRFilterBase< Mutex >::v2 = 0

protected

## active

template<typename Mutex>

bool juce::IIRFilterBase< Mutex >::active = false

protected

### Purchase

Get JUCE

### Discover

What's New in JUCE Features

### Learn

Documentaion Tutorials Made with JUCE Resources

### Support

JUCE Forum Newsletter Archive

### About

Contact Us JUCE Legal JUCE Licensing FAQ

### Events

Audio Developer Conference
© Raw Material Software Limited