ordfilt_rrrf

Finite impulse response (FIR) filter

Public Functions

ordfilt_rrrf ordfilt_rrrf_create(unsigned int _n, unsigned int _k)
ordfilt_rrrf ordfilt_rrrf_create_medfilt(unsigned int _m)
ordfilt_rrrf ordfilt_rrrf_copy(ordfilt_rrrf _q)
int ordfilt_rrrf_destroy(ordfilt_rrrf _q)
int ordfilt_rrrf_reset(ordfilt_rrrf _q)
int ordfilt_rrrf_print(ordfilt_rrrf _q)
int ordfilt_rrrf_push(ordfilt_rrrf _q, float _x)
int ordfilt_rrrf_write(ordfilt_rrrf _q, float * _x, unsigned int _n)
int ordfilt_rrrf_execute(ordfilt_rrrf _q, float * _y)
int ordfilt_rrrf_execute_one(ordfilt_rrrf _q, float _x, float * _y)
int ordfilt_rrrf_execute_block(ordfilt_rrrf _q, float * _x, unsigned int _n, float * _y)

Interfaces

ordfilt_rrrf ordfilt_rrrf_create(unsigned int _n, unsigned int _k)

Create a order-statistic filter (ordfilt) object by specifying the buffer size and appropriate sample index of order statistic.

  • _n : buffer size, 0 < _n
  • _k : sample index for order statistic, 0 <= _k < _n

ordfilt_rrrf ordfilt_rrrf_create_medfilt(unsigned int _m)

Create a median filter by specifying buffer semi-length.

  • _m : buffer semi-length

ordfilt_rrrf ordfilt_rrrf_copy(ordfilt_rrrf _q)

Copy object including all internal objects and state

int ordfilt_rrrf_destroy(ordfilt_rrrf _q)

Destroy filter object and free all internal memory

int ordfilt_rrrf_reset(ordfilt_rrrf _q)

Reset filter object's internal buffer

int ordfilt_rrrf_print(ordfilt_rrrf _q)

Print filter object information to stdout

int ordfilt_rrrf_push(ordfilt_rrrf _q, float _x)

Push sample into filter object's internal buffer

  • _q : filter object
  • _x : single input sample

int ordfilt_rrrf_write(ordfilt_rrrf _q, float * _x, unsigned int _n)

Write block of samples into object's internal buffer

  • _q : filter object
  • _x : array of input samples, shape: (_n, 1)
  • _n : number of input elements

int ordfilt_rrrf_execute(ordfilt_rrrf _q, float * _y)

Execute on the filter's internal buffer

  • _q : filter object
  • _y : pointer to single output sample

int ordfilt_rrrf_execute_one(ordfilt_rrrf _q, float _x, float * _y)

Execute filter on one sample, equivalent to push() and execute()

  • _q : filter object
  • _x : single input sample
  • _y : pointer to single output sample

int ordfilt_rrrf_execute_block(ordfilt_rrrf _q, float * _x, unsigned int _n, float * _y)

Execute the filter on a block of input samples; in-place operation is permitted (_x and _y may point to the same place in memory)

  • _q : filter object
  • _x : pointer to input array, shape: (_n, 1)
  • _n : number of input, output samples
  • _y : pointer to output array, shape: (_n, 1)