OpenShot Audio Library | OpenShotAudio 0.4.0
 
Loading...
Searching...
No Matches
juce::dsp::WindowingFunction< FloatType > Class Template Reference

#include <juce_Windowing.h>

Public Types

enum  WindowingMethod {
  rectangular = 0 , triangular , hann , hamming ,
  blackman , blackmanHarris , flatTop , kaiser ,
  numWindowingMethods
}
 

Public Member Functions

 WindowingFunction (size_t size, WindowingMethod, bool normalise=true, FloatType beta=0)
 
void fillWindowingTables (size_t size, WindowingMethod type, bool normalise=true, FloatType beta=0) noexcept
 
void multiplyWithWindowingTable (FloatType *samples, size_t size) const noexcept
 

Static Public Member Functions

static void fillWindowingTables (FloatType *samples, size_t size, WindowingMethod, bool normalise=true, FloatType beta=0) noexcept
 
static const char * getWindowingMethodName (WindowingMethod) noexcept
 

Detailed Description

template<typename FloatType>
class juce::dsp::WindowingFunction< FloatType >

A class which provides multiple windowing functions useful for filter design and spectrum analyzers.

The different functions provided here can be used by creating either a WindowingFunction object, or a static function to fill an array with the windowing method samples.

Definition at line 40 of file juce_Windowing.h.

Member Enumeration Documentation

◆ WindowingMethod

template<typename FloatType>
enum juce::dsp::WindowingFunction::WindowingMethod

The windowing methods available.

Definition at line 45 of file juce_Windowing.h.

Constructor & Destructor Documentation

◆ WindowingFunction()

template<typename FloatType>
juce::dsp::WindowingFunction< FloatType >::WindowingFunction ( size_t size,
WindowingMethod type,
bool normalise = true,
FloatType beta = 0 )

This constructor automatically fills a buffer of the specified size using the fillWindowingTables function and the specified arguments.

See also
fillWindowingTables

Definition at line 37 of file juce_Windowing.cpp.

Member Function Documentation

◆ fillWindowingTables() [1/2]

template<typename FloatType>
void juce::dsp::WindowingFunction< FloatType >::fillWindowingTables ( FloatType * samples,
size_t size,
WindowingMethod type,
bool normalise = true,
FloatType beta = 0 )
staticnoexcept

Fills the content of an array with a given windowing method table.

Parameters
samplesthe destination buffer pointer
sizethe size of the destination buffer allocated in the object
normaliseif the result must be normalised, creating a DC amplitude response of one
betaan optional argument useful only for Kaiser's method, which must be positive and sets the properties of the method (bandwidth and attenuation increases with beta)

Definition at line 51 of file juce_Windowing.cpp.

◆ fillWindowingTables() [2/2]

template<typename FloatType>
void juce::dsp::WindowingFunction< FloatType >::fillWindowingTables ( size_t size,
WindowingMethod type,
bool normalise = true,
FloatType beta = 0 )
noexcept

Fills the content of the object array with a given windowing method table.

Parameters
sizethe size of the destination buffer allocated in the object
typethe type of windowing method being used
normaliseif the result must be normalised, creating a DC amplitude response of one
betaan optional argument useful only for Kaiser's method which must be positive and sets the properties of the method (bandwidth and attenuation increases with beta)

Definition at line 43 of file juce_Windowing.cpp.

Referenced by fillWindowingTables(), and WindowingFunction().

◆ getWindowingMethodName()

template<typename FloatType>
const char * juce::dsp::WindowingFunction< FloatType >::getWindowingMethodName ( WindowingMethod type)
staticnoexcept

Returns the name of a given windowing method.

Definition at line 173 of file juce_Windowing.cpp.

◆ multiplyWithWindowingTable()

template<typename FloatType>
void juce::dsp::WindowingFunction< FloatType >::multiplyWithWindowingTable ( FloatType * samples,
size_t size ) const
noexcept

Multiplies the content of a buffer with the given window.

Definition at line 167 of file juce_Windowing.cpp.

Referenced by juce::dsp::FilterDesign< FloatType >::designFIRLowpassWindowMethod().


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