|
| bspl_prefilter (const iir_filter_specs &specs, size_t size) |
|
void | operator() () |
|
void | solve (const in_buffer_type &input, out_buffer_type &output) |
| solve() takes two buffers, one to the input data and one to the output space. The containers must have the same size. It's safe to use solve() in-place. More...
|
|
void | solve (out_buffer_type &data) |
| for in-place operation we use the same filter routine. More...
|
|
Public Member Functions inherited from vspline::buffer_handling< _vtype, _math_ele_type, vspline::vector_traits< _math_ele_type >::size > |
void | get (const tractor &src, std::ptrdiff_t offset=0, int ni=vsize) const |
| fetch data from 'source' into the buffer 'in_window' More...
|
|
void | put (const tractor &trg, std::ptrdiff_t offset=0, int ni=vsize) const |
| deposit result data from 'out_window' into target memory More...
|
|
int | get_support_width () const |
| calling code may have to set up buffers with additional space around the actual data to allow filtering code to 'run up' to the data, shedding margin effects in the process. For an IIR filter, this is theoretically infinite , but since we usually work to a specified precision, we can pass 'horizon' - horizon[0] containing the largest of the horizon values. More...
|
|
void | solve (const in_buffer_type &input, out_buffer_type &output) |
| solve() takes two buffers, one to the input data and one to the output space. The containers must have the same size. It's safe to use solve() in-place. More...
|
|
void | solve (out_buffer_type &data) |
| for in-place operation we use the same filter routine. More...
|
|
| iir_filter (const iir_filter_specs &specs) |
| The last bit of work left is the constructor. This simply passes the specs to the base class constructor, as iir_filter inherits from the specs type. More...
|
|
| iir_filter_specs (vspline::bc_code _bc, int _npoles, const xlf_type *_pole, xlf_type _tolerance, xlf_type _boost=xlf_type(1)) |
|
template<template< typename, size_t > class _vtype, typename _math_ele_type, size_t _vsize = vspline::vector_traits<_math_ele_type>::size>
struct vspline::bspl_prefilter< _vtype, _math_ele_type, _vsize >
class to provide b-spline prefiltering, using 'iir_filter' above. The actual filter object has to interface with the data handling routine ('present', see filter.h). So this class functions as an adapter, combining the code needed to set up adequate buffers and creation of the actual IIR filter itself. The interface to the data handling routine is provided by inheriting from class buffer_handling
Definition at line 911 of file prefilter.h.
template<template< typename, size_t > class _vtype, typename _math_ele_type , size_t _vsize = vspline::vector_traits<_math_ele_type>::size>
void vspline::iir_filter< in_type, out_type, _math_type >::solve |
( |
const in_buffer_type & |
input, |
|
|
out_buffer_type & |
output |
|
) |
| |
|
inline |
solve() takes two buffers, one to the input data and one to the output space. The containers must have the same size. It's safe to use solve() in-place.
Definition at line 259 of file prefilter.h.