annotate src/video/gem/SDL_gemwindow.h @ 2661:d38309be5178 gsoc2008_audio_resampling

The windowed sinc filter generation code seems to be working fine. The FIR filtering code is also now working reasonably well. Occasionally the FIR filter will pop, but setting the normalization factor lower seems to help this. I suspect the problem is in the fixed point multiply/add. I also have a hunch the zero stuffing/sample discarding code is not correct, and I'll look at that soon to get it sorted out.
author Aaron Wishnick <schnarf@gmail.com>
date Wed, 02 Jul 2008 08:04:50 +0000
parents f54670a477bb
children 99210400e8b9
rev   line source
2189
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
1 /*
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
2 SDL - Simple DirectMedia Layer
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
3 Copyright (C) 1997-2006 Sam Lantinga
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
4
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
5 This library is free software; you can redistribute it and/or
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
6 modify it under the terms of the GNU Lesser General Public
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
7 License as published by the Free Software Foundation; either
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
8 version 2.1 of the License, or (at your option) any later version.
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
9
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
10 This library is distributed in the hope that it will be useful,
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
13 Lesser General Public License for more details.
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
14
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
15 You should have received a copy of the GNU Lesser General Public
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
16 License along with this library; if not, write to the Free Software
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
18
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
19 Sam Lantinga
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
20 slouken@libsdl.org
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
21 */
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
22 #include "SDL_config.h"
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
23
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
24 #ifndef _SDL_gemwindow_h
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
25 #define _SDL_gemwindow_h
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
26
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
27 typedef struct
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
28 {
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
29 SDL_WindowID windowID;
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
30 struct SDL_VideoData *videodata;
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
31 } SDL_WindowData;
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
32
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
33 extern int GEM_CreateWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
34 extern int GEM_CreateWindowFrom(_THIS, SDL_Window * window, const void *data);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
35 extern void GEM_SetWindowTitle(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
36 extern void GEM_SetWindowPosition(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
37 extern void GEM_SetWindowSize(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
38 extern void GEM_ShowWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
39 extern void GEM_HideWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
40 extern void GEM_RaiseWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
41 extern void GEM_MaximizeWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
42 extern void GEM_MinimizeWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
43 extern void GEM_RestoreWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
44 extern void GEM_SetWindowGrab(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
45 extern void GEM_DestroyWindow(_THIS, SDL_Window * window);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
46 extern SDL_bool GEM_GetWindowWMInfo(_THIS, SDL_Window * window,
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
47 struct SDL_SysWMinfo *info);
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
48
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
49 #endif /* _SDL_gemwindow_h */
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
50
f54670a477bb Update GEM driver to new API, will have to fill the void later :)
Patrice Mandin <patmandin@gmail.com>
parents:
diff changeset
51 /* vi: set ts=4 sw=4 expandtab: */