NAME¶
rtf_create_filter - Creates a custom filter
SYNOPSIS¶
#include <rtfilter.h>
hfilter rtf_create_filter(unsigned int nchann, int
proctype,
unsigned int num_len, const void *num,
unsigned int denum_len, const void *denum,
int type);
DESCRIPTION¶
This function creates and initializes a digital linear filter whose the
Z-transform is rational and processing
nchann channels of a data type
specified by
proctype.
The numerator and denominator of the rational expression are specified by
respectively two arrays
num and
denum containing the
coefficients in the ascending order of the 2 polynoms. The number of elements
in each arrays is controlled by
num_len and enum_len.
denum_len
is allowed to be equal to zero as well as
denum is allowed to be NULL.
In such case, the denominator will be set to 1. The data type of the values in
num and
denum are specified by
type.
The
proctype and
type must be one the following constants:
-
- RTF_FLOAT specifies real single precision (float)
-
- RTF_DOUBLE specifies real double precision (double)
-
- RTF_CFLOAT specifies complex single precision (complex
float)
-
- RTF_CDOUBLE specifies complex double precision (complex
double)
The expected data type of the output of the filter has the same precision as the
one specified by
proctype and is complex
proctype or
type
specifies a complex type. Said otherwise:
- *
- If proctype is RTF_FLOAT or RTF_CFLOAT then the
output data type will have single precision. Otherwise it will have double
precision.
- *
- If proctype or type specifies a complex type, then the
output will be complex as well. Otherwise, it will be real.
rtf_create_filter() can be used to use a filter that has been designed
somewhere else. In particular, this function can be used directly with the
output of filter design function of MATLAB. In such case, the usual B and A
arrays returned by the filter design functions corresponds exactly to
respectively
num and
denum.
RETURN VALUE¶
Returns the handle to the created filter in case of success, NULL otherwise.
See note of
rtf_filter(3)
SEE ALSO¶
rtf_destroy_filter(3),
rtf_init_filter(3),
rtf_filter(3)