ldas-tools-filters  2.6.5
Public Member Functions | Protected Member Functions | List of all members
Filters::Window Class Referenceabstract

An abstract base class for window functions. More...

#include <Window.hh>

Inheritance diagram for Filters::Window:
Filters::HannWindow Filters::HannWindow Filters::HannWindow Filters::KaiserWindow Filters::KaiserWindow Filters::KaiserWindow Filters::RectangularWindow Filters::RectangularWindow Filters::RectangularWindow

Public Member Functions

 Window ()
 Default constructor
 
virtual ~Window ()
 Destructor.
 
const Windowoperator= (const Window &r)
 Copy assignment. More...
 
size_t size () const
 Return window length. More...
 
double mean () const
 Return mean value of window. More...
 
double rms () const
 Return RMS value of window. More...
 
virtual std::string name () const =0
 Return window name. More...
 
virtual double param () const =0
 Return window parameter. More...
 
void resize (const size_t n)
 Change the size of the window. More...
 
template<class T >
void apply (std::valarray< T > &x)
 Apply a window to the data in-place. More...
 
template<class TOut , class TIn >
void apply (std::valarray< TOut > &out, const std::valarray< TIn > &in)
 Apply a window to the data out-of-place. More...
 
template<class TOut , class TIn >
void operator() (std::valarray< TOut > &out, const std::valarray< TIn > &in)
 Synonym for apply. More...
 
virtual WindowClone () const =0
 Clone a window. More...
 
 Window ()
 Default constructor
 
virtual ~Window ()
 Destructor.
 
const Windowoperator= (const Window &r)
 Copy assignment. More...
 
size_t size () const
 Return window length. More...
 
double mean () const
 Return mean value of window. More...
 
double rms () const
 Return RMS value of window. More...
 
virtual std::string name () const =0
 Return window name. More...
 
virtual double param () const =0
 Return window parameter. More...
 
void resize (const size_t n)
 Change the size of the window. More...
 
template<class T >
void apply (std::valarray< T > &x)
 Apply a window to the data in-place. More...
 
template<class TOut , class TIn >
void apply (std::valarray< TOut > &out, const std::valarray< TIn > &in)
 Apply a window to the data out-of-place. More...
 
template<class TOut , class TIn >
void operator() (std::valarray< TOut > &out, const std::valarray< TIn > &in)
 Synonym for apply. More...
 
virtual WindowClone () const =0
 Clone a window. More...
 
 Window ()
 Default constructor
 
virtual ~Window ()
 Destructor.
 
const Windowoperator= (const Window &r)
 Copy assignment. More...
 
size_t size () const
 Return window length. More...
 
double mean () const
 Return mean value of window. More...
 
double rms () const
 Return RMS value of window. More...
 
virtual std::string name () const =0
 Return window name. More...
 
virtual double param () const =0
 Return window parameter. More...
 
void resize (const size_t n)
 Change the size of the window. More...
 
template<class T >
void apply (std::valarray< T > &x)
 Apply a window to the data in-place. More...
 
template<class TOut , class TIn >
void apply (std::valarray< TOut > &out, const std::valarray< TIn > &in)
 Apply a window to the data out-of-place. More...
 
template<class TOut , class TIn >
void operator() (std::valarray< TOut > &out, const std::valarray< TIn > &in)
 Synonym for apply. More...
 
virtual WindowClone () const =0
 Clone a window. More...
 

Protected Member Functions

void populate ()
 Populate the elements of the window. More...
 
void populate ()
 Populate the elements of the window. More...
 
void populate ()
 Populate the elements of the window. More...
 

Detailed Description

An abstract base class for window functions.

Member Function Documentation

◆ apply() [1/6]

template<class T >
void Filters::Window::apply ( std::valarray< T > &  x)

Apply a window to the data in-place.

Parameters
[in,out]xinput/output sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ apply() [2/6]

template<class T >
void Filters::Window::apply ( std::valarray< T > &  x)

Apply a window to the data in-place.

Parameters
[in,out]xinput/output sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ apply() [3/6]

template<class T >
void Filters::Window::apply ( std::valarray< T > &  x)

Apply a window to the data in-place.

Parameters
[in,out]xinput/output sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ apply() [4/6]

template<class TOut , class TIn >
void Filters::Window::apply ( std::valarray< TOut > &  out,
const std::valarray< TIn > &  in 
)

Apply a window to the data out-of-place.

Parameters
[out]outwindowed sequence
[in]ininput sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ apply() [5/6]

template<class TOut , class TIn >
void Filters::Window::apply ( std::valarray< TOut > &  out,
const std::valarray< TIn > &  in 
)

Apply a window to the data out-of-place.

Parameters
[out]outwindowed sequence
[in]ininput sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ apply() [6/6]

template<class TOut , class TIn >
void Filters::Window::apply ( std::valarray< TOut > &  out,
const std::valarray< TIn > &  in 
)

Apply a window to the data out-of-place.

Parameters
[out]outwindowed sequence
[in]ininput sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ Clone() [1/3]

virtual Window* Filters::Window::Clone ( ) const
pure virtual

◆ Clone() [2/3]

virtual Window* Filters::Window::Clone ( ) const
pure virtual

◆ Clone() [3/3]

virtual Window* Filters::Window::Clone ( ) const
pure virtual

◆ mean() [1/3]

double Filters::Window::mean ( ) const
inline

Return mean value of window.

Returns
mean value of window elements

◆ mean() [2/3]

double Filters::Window::mean ( ) const

Return mean value of window.

Returns
mean value of window elements

◆ mean() [3/3]

double Filters::Window::mean ( ) const

Return mean value of window.

Returns
mean value of window elements

◆ name() [1/3]

virtual std::string Filters::Window::name ( ) const
pure virtual

◆ name() [2/3]

virtual std::string Filters::Window::name ( ) const
pure virtual

◆ name() [3/3]

virtual std::string Filters::Window::name ( ) const
pure virtual

◆ operator()() [1/3]

template<class TOut , class TIn >
void Filters::Window::operator() ( std::valarray< TOut > &  out,
const std::valarray< TIn > &  in 
)

Synonym for apply.

Parameters
[out]outwindowed sequence
[in]ininput sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ operator()() [2/3]

template<class TOut , class TIn >
void Filters::Window::operator() ( std::valarray< TOut > &  out,
const std::valarray< TIn > &  in 
)

Synonym for apply.

Parameters
[out]outwindowed sequence
[in]ininput sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ operator()() [3/3]

template<class TOut , class TIn >
void Filters::Window::operator() ( std::valarray< TOut > &  out,
const std::valarray< TIn > &  in 
)

Synonym for apply.

Parameters
[out]outwindowed sequence
[in]ininput sequence
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for window

◆ operator=() [1/3]

const Window& Filters::Window::operator= ( const Window r)

Copy assignment.

Parameters
[in]rWindow that is copied
Returns
This object

◆ operator=() [2/3]

const Window& Filters::Window::operator= ( const Window r)

Copy assignment.

Parameters
[in]rWindow that is copied
Returns
This object

◆ operator=() [3/3]

const Window & Filters::Window::operator= ( const Window r)

Copy assignment.

Parameters
[in]rWindow that is copied
Returns
This object

◆ param() [1/3]

virtual double Filters::Window::param ( ) const
pure virtual

◆ param() [2/3]

virtual double Filters::Window::param ( ) const
pure virtual

◆ param() [3/3]

virtual double Filters::Window::param ( ) const
pure virtual

◆ populate() [1/3]

void Filters::Window::populate ( )
protected

Populate the elements of the window.

This function will usually need to be called by a derived class whenever the the window is changed in any way which affects the element() function, such as when some window parameter is altered.

◆ populate() [2/3]

void Filters::Window::populate ( )
protected

Populate the elements of the window.

This function will usually need to be called by a derived class whenever the the window is changed in any way which affects the element() function, such as when some window parameter is altered.

◆ populate() [3/3]

void Filters::Window::populate ( )
protected

Populate the elements of the window.

This function will usually need to be called by a derived class whenever the the window is changed in any way which affects the element() function, such as when some window parameter is altered.

◆ resize() [1/3]

void Filters::Window::resize ( const size_t  n)

Change the size of the window.

Parameters
[in]ndesired length of window
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for the window

◆ resize() [2/3]

void Filters::Window::resize ( const size_t  n)

Change the size of the window.

Parameters
[in]ndesired length of window
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for the window

◆ resize() [3/3]

void Filters::Window::resize ( const size_t  n)

Change the size of the window.

Parameters
[in]ndesired length of window
Exceptions
std::length_errorthrown if desired window length is greater than maximum allowed value
std::bad_allocthrown if not able to allocate memory for the window

◆ rms() [1/3]

double Filters::Window::rms ( ) const

Return RMS value of window.

Returns
root mean square value of window elements

◆ rms() [2/3]

double Filters::Window::rms ( ) const
inline

Return RMS value of window.

Returns
root mean square value of window elements

◆ rms() [3/3]

double Filters::Window::rms ( ) const

Return RMS value of window.

Returns
root mean square value of window elements

◆ size() [1/3]

size_t Filters::Window::size ( ) const

Return window length.

Returns
length of window

◆ size() [2/3]

size_t Filters::Window::size ( ) const

Return window length.

Returns
length of window

◆ size() [3/3]

size_t Filters::Window::size ( ) const
inline

Return window length.

Returns
length of window

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