VISR  0.11.7
Versatile Interactive Scene Renderer
visr::rbbl::FftWrapperFactory< SampleType > Class Template Reference

#include <fft_wrapper_factory.hpp>

Static Public Member Functions

static std::unique_ptr< FftWrapperBase< SampleType > > create (std::string const &wrapperName, std::size_t fftSize, std::size_t alignElements)
 
template<class FftWrapper >
static void registerWrapper (std::string const &wrapperName)
 
static std::string listImplementations ()
 

Detailed Description

template<typename SampleType>
class visr::rbbl::FftWrapperFactory< SampleType >

Factory class to construct FftWrapper objects of different types. It is intended to be used only through its static function interface.

Template Parameters
DataTypeThe value type for the FFT implementations - generally float or double.

Member Function Documentation

◆ create()

template<typename SampleType >
std::unique_ptr< FftWrapperBase< SampleType > > visr::rbbl::FftWrapperFactory< SampleType >::create ( std::string const &  wrapperName,
std::size_t  fftSize,
std::size_t  alignElements 
)
static

Creation function for FftWrapper objects.

Parameters
wrapperNameThe name of the FFT library to be instantiated, or "default" to instantiate the default choice for this platform.
fftSizeThe size of the FFTs (number of real samples used as input to the forward FFT).
alignElementsAlignment of the vectors passed to the FFT (in number of samples).

◆ listImplementations()

template<typename SampleType >
std::string visr::rbbl::FftWrapperFactory< SampleType >::listImplementations ( )
static

Return a list of strings containing the names of the FFT wrappers available on this platform (and for this data type).

◆ registerWrapper()

template<typename SampleType >
template<class WrapperType >
void visr::rbbl::FftWrapperFactory< SampleType >::registerWrapper ( std::string const &  wrapperName)
static

Template function to register a FFT wrapper withing the factory.


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