Basic Audio Signal Processing Library

Dependents:   unzen_sample_nucleo_f746 skeleton_unzen_nucleo_f746 ifmag_noise_canceller synthesizer_f746

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers firfilter.h Source File

firfilter.h

00001 #ifndef _firfilter_h_
00002 #define _firfilter_h_
00003 
00004 #include "abstractfilter.h"
00005 namespace amakusa
00006 {
00007 /**
00008 * @brief Wrapper class of the arm_fir_f32() and the arm_fir_init_f32().
00009 * @details
00010 * To use this class, include amakusa.h
00011 */
00012     class FIRFilter : public AbstractFilter
00013     {
00014     public:
00015             /**
00016             * @brief Constructor
00017             * @param[in] taps Number of the elements in the coeffisients array. Or length of the impuls response. 
00018             * @param[in] pCoeff Ponter to the coefficients array ( Impuls response ).
00019             * @param[in] blockSize Maximum number of the samples to be given to run() method at onece. 
00020             */
00021         FIRFilter(uint16_t taps, float32_t *pCoeff, uint32_t block_size);
00022             /**
00023             * Destructor
00024             */
00025         virtual ~FIRFilter();
00026             /**
00027             * @brief Run the filter.
00028             * @param[in] pSrc Pointer to the source buffer to be filtered.
00029             * @param[out] pDst Pointer to the destination buffer to store the filtered signal. 
00030             */
00031         virtual void run( float32_t *pSrc, float32_t *pDst );
00032     private:
00033         arm_fir_instance_f32 state;
00034     };
00035     
00036 }
00037 
00038 #endif