Annotation of src/usr.bin/aucat/dev.h, Revision 1.2
1.2 ! ratchov 1: /* $OpenBSD: dev.h,v 1.1 2008/05/23 07:15:46 ratchov Exp $ */
1.1 ratchov 2: /*
3: * Copyright (c) 2008 Alexandre Ratchov <alex@caoua.org>
4: *
5: * Permission to use, copy, modify, and distribute this software for any
6: * purpose with or without fee is hereby granted, provided that the above
7: * copyright notice and this permission notice appear in all copies.
8: *
9: * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10: * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11: * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12: * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13: * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14: * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15: * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16: */
17: #ifndef DEV_H
18: #define DEV_H
19:
1.2 ! ratchov 20: struct aproc;
! 21: struct aparams;
! 22: struct file;
! 23: struct abuf;
1.1 ratchov 24:
1.2 ! ratchov 25: extern unsigned dev_infr, dev_onfr;
! 26: extern struct aparams dev_ipar, dev_opar;
! 27: extern struct aproc *dev_mix, *dev_sub, *dev_rec, *dev_play;
! 28: extern struct file *dev_file;
! 29:
! 30: void dev_fill(void);
! 31: void dev_flush(void);
! 32: void dev_init(char *, struct aparams *, struct aparams *);
! 33: void dev_start(void);
! 34: void dev_stop(void);
! 35: void dev_run(int);
! 36: void dev_done(void);
! 37: void dev_attach(char *,
! 38: struct abuf *, struct aparams *, unsigned,
! 39: struct abuf *, struct aparams *, unsigned);
! 40:
! 41: struct devops {
! 42: int (*open)(char *, struct aparams *, struct aparams *,
! 43: unsigned *, unsigned *);
! 44: void (*close)(int);
! 45: void (*start)(int);
! 46: void (*stop)(int);
! 47: };
! 48:
! 49: extern struct devops *devops, devops_sun;
! 50:
! 51: /*
! 52: * Sun API specific functions
! 53: */
! 54: struct audio_prinfo;
1.1 ratchov 55: int sun_infotopar(struct audio_prinfo *, struct aparams *);
56: void sun_partoinfo(struct audio_prinfo *, struct aparams *);
57:
58: #endif /* !define(DEV_H) */