1 /*
2  *   cdda - CD Digital Audio support
3  *
4  *   Copyright (C) 1993-2004  Ti Kan
5  *   E-mail: xmcd@amb.org
6  *
7  *   This program is free software; you can redistribute it and/or modify
8  *   it under the terms of the GNU General Public License as published by
9  *   the Free Software Foundation; either version 2 of the License, or
10  *   (at your option) any later version.
11  *
12  *   This program is distributed in the hope that it will be useful,
13  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *   GNU General Public License for more details.
16  *
17  *   You should have received a copy of the GNU General Public License
18  *   along with this program; if not, write to the Free Software
19  *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20  */
21 #ifndef __PTHR_H__
22 #define __PTHR_H__
23 
24 #ifndef lint
25 static char *_pthr_h_ident_ = "@(#)pthr.h	7.9 04/02/13";
26 #endif
27 
28 #ifdef CDDA_PTHREADS
29 
30 #include <pthread.h>
31 
32 
33 /* Function prototypes */
34 extern word32_t	cdda_pthr_capab(void);
35 extern void	cdda_pthr_preinit(void);
36 extern bool_t	cdda_pthr_init(curstat_t *s);
37 extern void	cdda_pthr_halt(di_dev_t *, curstat_t *);
38 extern bool_t	cdda_pthr_play(di_dev_t *, curstat_t *, sword32_t, sword32_t);
39 extern bool_t	cdda_pthr_pause_resume(di_dev_t *, curstat_t *, bool_t);
40 extern bool_t	cdda_pthr_stop(di_dev_t *, curstat_t *);
41 extern int	cdda_pthr_vol(di_dev_t *, curstat_t *, int, bool_t);
42 extern bool_t	cdda_pthr_chroute(di_dev_t *, curstat_t *);
43 extern void	cdda_pthr_att(curstat_t *);
44 extern void	cdda_pthr_outport(void);
45 extern bool_t	cdda_pthr_getstatus(di_dev_t *, curstat_t *, cdstat_t *);
46 extern void	cdda_pthr_debug(word32_t);
47 extern void	cdda_pthr_info(char *);
48 extern int	cdda_pthr_initipc(cd_state_t *);
49 extern void	cdda_pthr_waitsem(int, int);
50 extern void	cdda_pthr_postsem(int, int);
51 extern void	cdda_pthr_yield(void);
52 extern void	cdda_pthr_kill(thid_t, int);
53 
54 #else
55 
56 #define cdda_pthr_capab		NULL
57 #define cdda_pthr_preinit	NULL
58 #define cdda_pthr_init		NULL
59 #define cdda_pthr_halt		NULL
60 #define cdda_pthr_play		NULL
61 #define cdda_pthr_pause_resume	NULL
62 #define cdda_pthr_stop		NULL
63 #define cdda_pthr_vol		NULL
64 #define cdda_pthr_chroute	NULL
65 #define cdda_pthr_att		NULL
66 #define cdda_pthr_outport	NULL
67 #define cdda_pthr_getstatus	NULL
68 #define cdda_pthr_debug		NULL
69 #define cdda_pthr_info		NULL
70 #define cdda_pthr_initipc	NULL
71 #define cdda_pthr_waitsem	NULL
72 #define cdda_pthr_postsem	NULL
73 #define cdda_pthr_yield		NULL
74 #define cdda_pthr_kill		NULL
75 
76 #endif	/* CDDA_PTHREADS */
77 
78 #endif	/* __PTHR_H__ */
79 
80