diff options
Diffstat (limited to 'sys/dev/sound/pcm/feeder.h')
-rw-r--r-- | sys/dev/sound/pcm/feeder.h | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/sys/dev/sound/pcm/feeder.h b/sys/dev/sound/pcm/feeder.h index bde121807c35..c3910e562c83 100644 --- a/sys/dev/sound/pcm/feeder.h +++ b/sys/dev/sound/pcm/feeder.h @@ -26,6 +26,21 @@ * $FreeBSD$ */ +struct pcm_feederdesc { + u_int32_t type; + u_int32_t in, out; + u_int32_t flags; + int idx; +}; + +struct pcm_feeder { + KOBJ_FIELDS; + int align; + struct pcm_feederdesc *desc; + void *data; + struct pcm_feeder *source; +}; + struct feeder_class { KOBJ_CLASS_FIELDS; int align; @@ -36,16 +51,16 @@ struct feeder_class { void feeder_register(void *p); struct feeder_class *feeder_getclass(struct pcm_feederdesc *desc); -u_int32_t chn_fmtchain(pcm_channel *c, u_int32_t *to); -int chn_addfeeder(pcm_channel *c, struct feeder_class *fc, struct pcm_feederdesc *desc); -int chn_removefeeder(pcm_channel *c); -pcm_feeder *chn_findfeeder(pcm_channel *c, u_int32_t type); +u_int32_t chn_fmtchain(struct pcm_channel *c, u_int32_t *to); +int chn_addfeeder(struct pcm_channel *c, struct feeder_class *fc, struct pcm_feederdesc *desc); +int chn_removefeeder(struct pcm_channel *c); +struct pcm_feeder *chn_findfeeder(struct pcm_channel *c, u_int32_t type); #define FEEDER_DECLARE(feeder, palign, pdata) \ static struct feeder_class feeder ## _class = { \ name: #feeder, \ methods: feeder ## _methods, \ - size: sizeof(pcm_feeder), \ + size: sizeof(struct pcm_feeder), \ align: palign, \ desc: feeder ## _desc, \ data: pdata, \ |