xref: /plan9/sys/src/cmd/usb/audio/audioctl.h (revision 906943f9f6b8411972abb5e3a03ed19f74be7ccc)
1*906943f9SDavid du Colombier enum{
2*906943f9SDavid du Colombier 	Undef = 0x80000000,
3*906943f9SDavid du Colombier 	Play = 0,
4*906943f9SDavid du Colombier 	Record = 1,
5*906943f9SDavid du Colombier };
6*906943f9SDavid du Colombier 
7*906943f9SDavid du Colombier typedef struct Audiocontrol Audiocontrol;
8*906943f9SDavid du Colombier 
9*906943f9SDavid du Colombier struct Audiocontrol {
10*906943f9SDavid du Colombier 	char	*name;
11*906943f9SDavid du Colombier 	uchar	readable;
12*906943f9SDavid du Colombier 	uchar	settable;
13*906943f9SDavid du Colombier 	uchar	chans;		/* 0 is master, non-zero is bitmap */
14*906943f9SDavid du Colombier 	long	value[8];	/* 0 is master; value[0] == Undef -> all values Undef */
15*906943f9SDavid du Colombier 	long	min, max, step;
16*906943f9SDavid du Colombier };
17*906943f9SDavid du Colombier 
18*906943f9SDavid du Colombier extern Audiocontrol controls[2][Ncontrol];
19*906943f9SDavid du Colombier extern int endpt[2];
20*906943f9SDavid du Colombier extern int interface[2];
21*906943f9SDavid du Colombier extern int featureid[2];
22*906943f9SDavid du Colombier extern int selectorid[2];
23*906943f9SDavid du Colombier extern int mixerid[2];
24*906943f9SDavid du Colombier extern int buttonendpt;
25*906943f9SDavid du Colombier 
26*906943f9SDavid du Colombier int	ctlparse(char *s, Audiocontrol *c, long *v);
27*906943f9SDavid du Colombier void	ctlevent(void);
28*906943f9SDavid du Colombier 
29*906943f9SDavid du Colombier #pragma	varargck	type	"A"	Audiocontrol*
30