Home | Develop | Download | Contact
 Todo Estructuras de Datos Funciones Variables 'typedefs' Grupos Páginas
pdsstft.h
1 /*
2  * pdsstft.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 
33 #ifndef __PDSSTFT_H__
34 #define __PDSSTFT_H__
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 
41 #include <stdio.h>
42 
43 #include <pds/pdsftglobal.h>
44 #include <pds/pdscvector.h>
45 #include <pds/pdsvector.h>
46 
47 #ifndef TRUE
48  #define TRUE 1
49 #endif
50 
51 #ifndef FALSE
52  #define FALSE 0
53 #endif
54 
79 typedef struct
80 {
83 
85  PdsCVector *X;
87  PdsVector *W;
92 
95 }PdsStft;
96 
97 
98 
99 
119 
120 
122 
135 
136 
144 
145 
153 
154 
163 
164 
166 
186 int pds_stft_evaluate_real(PdsStft *STFT,PdsCVector *Out,const PdsVector *In);
187 
188 
203 int pds_stft_evaluate_complex(const PdsStft *STFT,PdsCVector *Out,const PdsCVector *In);
204 
205 
207 
219 void pds_stft_free(PdsStft *STFT);
220 
221 
228 void pds_stft_destroy(PdsStft **STFT);
229 
230 
232 
233 
238 #ifdef __cplusplus
239 }
240 #endif
241 
242 #endif /* __PDSSTFT_H__ */
243 
unsigned int PdsFtNatural
Definition: pdsftglobal.h:50
void pds_stft_free(PdsStft *STFT)
Libera una estructura de tipo puntero PdsStft.
int pds_stft_set_window_rectangular(PdsStft *STFT)
Copia una ventana rectangular a W de la STFT.
void pds_stft_destroy(PdsStft **STFT)
Libera una estructura de tipo puntero PdsStft, y carga a la estructura con NULL.
int pds_stft_set_window_hamming(PdsStft *STFT)
Copia una ventana de Hamming a W de la STFT.
int pds_stft_set_window_gauss(PdsStft *STFT, PdsFtReal Sigma)
Copia una ventana de Gauss a W de la STFT.
PdsStft * pds_stft_new(PdsFtNatural L, PdsFtNatural *N)
Crea una estructura de tipo PdsStft, para generar una STFT de L puntos de entrada y N puntos de salid...
int pds_stft_evaluate_real(PdsStft *STFT, PdsCVector *Out, const PdsVector *In)
Evalua la STFT de un vetor real. El tamanho del vector Out debe ser igual al número de puntos de sali...
int pds_stft_evaluate_complex(const PdsStft *STFT, PdsCVector *Out, const PdsCVector *In)
Evalua la STFT de un vetor real. El tamanho del vector Out debe ser igual al número de puntos de sali...
PdsFtNatural L
Definition: pdsstft.h:82
Estructura tipo PdsStft. Esta estructura genera una Transformada de Fourier de Tiempo Reducido de N p...
Definition: pdsstft.h:79
float PdsFtReal
Definition: pdsftglobal.h:45
PdsCVector * X
Definition: pdsstft.h:85
PdsVector * W
Definition: pdsstft.h:87
PdsFft * FFT
Definition: pdsstft.h:94
PdsFtNatural N
Definition: pdsstft.h:91
Estructura tipo PdsFft. Esta estructura genera una Transformada Rápida de Fourier de N puntos...
Definition: pdsfft.h:84
int pds_stft_set_window_hanning(PdsStft *STFT)
Copia una ventana de Hann a W de la STFT.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed