windowfunctions.h
Go to the documentation of this file.
1 /*
2  Harmonic sinusoidal modelling and tools
3 
4  C++ code package for harmonic sinusoidal modelling and relevant signal processing.
5  Centre for Digital Music, Queen Mary, University of London.
6  This file copyright 2011 Wen Xue.
7 
8  This program is free software; you can redistribute it and/or
9  modify it under the terms of the GNU General Public License as
10  published by the Free Software Foundation; either version 2 of the
11  License, or (at your option) any later version.
12 */
13 #ifndef WindowFunctionsH
14 #define WindowFunctionsH
15 
20 enum WindowType
21 {
22  wtRectangle,
23  wtTriangular,
24  wtHamming,
25  wtBlackman,
26  wtGaussian,
27  wtKaiser,
28  wtHalfCosine,
29  wtHann,
30  wtHannSqr,
31  wtHann3sqrt
32 };
33 
34 //--window function computation routines-------------------------------------
35 void FillWindow(double* newwindow, WindowType wt, int Count, int* ips=0, double* dps=0);
36 double* NewWindow(WindowType wt, int Count, int* ips=0, double* dps=0, double* newwindow=0);
37 double* NewWindow8(WindowType wt, int Count, int* ips=0, double* dps=0, double* newwindow=0);
38 double* NewdWindow(WindowType wt, int Count, int* ips=0, double* dps=0, double* newdwindow=0);
39 double* NewddWindow(WindowType wt, int Count, int* ips=0, double* dps=0, double* newddwindow=0);
40 double* NewdddWindow(WindowType wt, int Count, int* ips=0, double* dps=0, double* newdddwindow=0);
41 
42 //--other functions----------------------------------------------------------
43 void windowspec(WindowType wt, int N, int* M, double* c, double* iH2, double* d=0);
44 
45 #endif
double * NewdWindow(WindowType wt, int Count, int *ips=0, double *dps=0, double *newdwindow=0)
Definition: windowfunctions.cpp:164
double * NewdddWindow(WindowType wt, int Count, int *ips=0, double *dps=0, double *newdddwindow=0)
Definition: windowfunctions.cpp:297
double * NewWindow8(WindowType wt, int Count, int *ips=0, double *dps=0, double *newwindow=0)
Definition: windowfunctions.cpp:147
double * NewddWindow(WindowType wt, int Count, int *ips=0, double *dps=0, double *newddwindow=0)
Definition: windowfunctions.cpp:230
void windowspec(WindowType wt, int N, int *M, double *c, double *iH2, double *d=0)
Definition: windowfunctions.cpp:364
double * NewWindow(WindowType wt, int Count, int *ips=0, double *dps=0, double *newwindow=0)
Definition: windowfunctions.cpp:128
void FillWindow(double *newwindow, WindowType wt, int Count, int *ips=0, double *dps=0)
Definition: windowfunctions.cpp:53