1 /* Sysdep sound dsp object
2 
3    Copyright 2000 Hans de Goede
4 
5    This file and the acompanying files in this directory are free software;
6    you can redistribute them and/or modify them under the terms of the GNU
7    Library General Public License as published by the Free Software Foundation;
8    either version 2 of the License, or (at your option) any later version.
9 
10    These files are distributed in the hope that they will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Library General Public License for more details.
14 
15    You should have received a copy of the GNU Library General Public
16    License along with these files; see the file COPYING.LIB.  If not,
17    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18    Boston, MA 02111-1307, USA.
19 */
20 #ifndef __SYSDEP_DSP_PRIV_H
21 #define __SYSDEP_DSP_PRIV_H
22 
23 #include "misc.h"
24 #include "begin_code.h"
25 
26 struct sysdep_dsp_info {
27    int samplerate;
28    int type;
29    int bufsize;
30 };
31 
32 struct sysdep_dsp_struct {
33    struct sysdep_dsp_info hw_info;
34    struct sysdep_dsp_info emu_info;
35    unsigned char *convert_buf;
36    uclock_t last_update;
37    void *_priv;
38    int (*get_freespace)(struct sysdep_dsp_struct *dsp);
39    int (*write)(struct sysdep_dsp_struct *dsp, unsigned char *data,
40       int count);
41    void (*destroy)(struct sysdep_dsp_struct *dsp);
42 };
43 
44 struct sysdep_dsp_create_params {
45    float bufsize;
46    const char *device;
47    int samplerate;
48    int type;
49    int flags;
50 };
51 
52 #include "end_code.h"
53 #endif /* ifndef __SYSDEP_DSP_PRIV_H */
54