diff options
author | cg <cg@FreeBSD.org> | 2000-12-18 01:36:41 +0000 |
---|---|---|
committer | cg <cg@FreeBSD.org> | 2000-12-18 01:36:41 +0000 |
commit | 2fae4aec24ea4529882b3ec4cda45661ccd48ea8 (patch) | |
tree | e7e32573ed48df98bed54daa386c3520e959e951 /sys/dev/sound/pcm/mixer.h | |
parent | 1fd2c926a884cc824e7da7ee1a51dad72b1dec5b (diff) | |
download | FreeBSD-src-2fae4aec24ea4529882b3ec4cda45661ccd48ea8.zip FreeBSD-src-2fae4aec24ea4529882b3ec4cda45661ccd48ea8.tar.gz |
kobjify.
this gives us several benefits, including:
* easier extensibility- new optional methods can be added to
ac97/mixer/channel classes without having to fixup every driver.
* forward compatibility for drivers, provided no new mandatory methods are
added.
Diffstat (limited to 'sys/dev/sound/pcm/mixer.h')
-rw-r--r-- | sys/dev/sound/pcm/mixer.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/sound/pcm/mixer.h b/sys/dev/sound/pcm/mixer.h index eb1946b..08824fc 100644 --- a/sys/dev/sound/pcm/mixer.h +++ b/sys/dev/sound/pcm/mixer.h @@ -26,12 +26,12 @@ * $FreeBSD$ */ -extern int mixer_init(device_t dev, snd_mixer *m, void *devinfo); +extern int mixer_init(device_t dev, kobj_class_t cls, void *devinfo); extern int mixer_uninit(device_t dev); extern int mixer_reinit(device_t dev); extern int mixer_ioctl(snddev_info *d, u_long cmd, caddr_t arg); -extern int mixer_busy(snddev_info *d, int busy); -extern int mixer_isbusy(snddev_info *d); +extern int mixer_busy(snd_mixer *m, int busy); +extern int mixer_isbusy(snd_mixer *m); extern void change_bits(mixer_tab *t, u_char *regval, int dev, int chn, int newval); @@ -40,3 +40,5 @@ void mix_setrecdevs(snd_mixer *m, u_int32_t v); u_int32_t mix_getdevs(snd_mixer *m); u_int32_t mix_getrecdevs(snd_mixer *m); void *mix_getdevinfo(snd_mixer *m); + +#define MIXER_DECLARE(name) DEFINE_CLASS(name, name ## _methods, sizeof(snd_mixer)) |