Home | Develop | Download | Contact
pdsfirnlms.h
1 /*
2  * pdsfirnlms.h
3  *
4  * Copyright 2011 Fernando Pujaico Rivera <fernando.pujaico.rivera@gmail.com>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19  * MA 02110-1301, USA.
20  *
21  */
22 
38 #ifndef __PDSFIRNLMS_H__
39 #define __PDSFIRNLMS_H__
40 
41 
42 #ifdef __cplusplus
43 extern "C" {
44 #endif
45 
46 #include <pds/pdsdfglobal.h>
47 
48 #include <pds/pdsfir.h>
49 #include <stdio.h>
50 
51 #ifndef TRUE
52  #define TRUE 1
53 #endif
54 
55 #ifndef FALSE
56  #define FALSE 0
57 #endif
58 
89 typedef struct
90 {
97 }PdsFirNlms;
98 
99 
111 PdsFirNlms *pds_fir_nlms_new(PdsDfReal Mhu, PdsRaNatural M);
112 
113 
122 int pds_fir_nlms_disable(PdsFirNlms *FirNlms);
123 
124 
132 int pds_fir_nlms_enable(PdsFirNlms *FirNlms);
133 
134 
143 int pds_fir_nlms_set_mhu(PdsFirNlms *FirNlms,PdsDfReal Mhu);
144 
145 
159 
160 
178 int pds_fir_nlms_evaluate_vector(PdsFirNlms *FirNlms,const PdsVector *d,const PdsVector *x,PdsVector *e,PdsVector *y);
179 
180 
187 void pds_fir_nlms_free(PdsFirNlms *FirNlms);
188 
189 
196 void pds_fir_nlms_destroy(PdsFirNlms **FirNlms);
197 
198 
203 #ifdef __cplusplus
204 }
205 #endif
206 
207 #endif /* __PDSFIRNLMS_H__ */
208 
void pds_fir_nlms_free(PdsFirNlms *FirNlms)
Libera el filtro de tipo PdsFirNlms.
PdsDfReal Mhu
Definition: pdsfirnlms.h:92
int pds_fir_nlms_disable(PdsFirNlms *FirNlms)
Deshabilita la reconfiguración de los pesos h[i] del filtro FIR NLMS y se mantienen los ultimos pesos...
int pds_fir_nlms_evaluate_value(PdsFirNlms *FirNlms, PdsDfReal d, PdsDfReal x, PdsDfReal *e, PdsDfReal *y)
Evalúa el filtro FIR NLMS con el valor de entrada "d" e "x", el resultado es cargado en "e" e "y"...
int PdsDfInteger
Definition: pdsdfglobal.h:52
int pds_fir_nlms_evaluate_vector(PdsFirNlms *FirNlms, const PdsVector *d, const PdsVector *x, PdsVector *e, PdsVector *y)
Evalúa el filtro FIR NLMS con el vector de entrada x, el resultado es cargado en el vector y...
PdsDfInteger Work
Definition: pdsfirnlms.h:94
int pds_fir_nlms_enable(PdsFirNlms *FirNlms)
Habilita la reconfiguración de los pesos h[i] del filtro FIR NLMS.
PdsFirNlms * pds_fir_nlms_new(PdsDfReal Mhu, PdsRaNatural M)
Crea un filtro FIR NLMS con parametros h[i] del filtro FIR, con un valor inicial de h[i]=1/(1+M)...
Una estructura tipo PdsFir .
Definition: pdsfir.h:77
void pds_fir_nlms_destroy(PdsFirNlms **FirNlms)
Libera el filtro de tipo PdsFirNlms. y carga la variable con NULL.
Una estructura tipo PdsFirNlms .
Definition: pdsfirnlms.h:89
float PdsDfReal
Definition: pdsdfglobal.h:42
int pds_fir_nlms_set_mhu(PdsFirNlms *FirNlms, PdsDfReal Mhu)
Coloca el valor Mhu del filtro FIR NLMS.
PdsFir * Fir
Definition: pdsfirnlms.h:96

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed