version 1.4, 2010/01/10 21:47:41 |
version 1.5, 2010/04/03 17:40:33 |
|
|
struct optlist opt_list = SLIST_HEAD_INITIALIZER(&opt_list); |
struct optlist opt_list = SLIST_HEAD_INITIALIZER(&opt_list); |
|
|
void |
void |
opt_new(char *name, |
opt_new(char *name, struct aparams *wpar, struct aparams *rpar, |
struct aparams *wpar, struct aparams *rpar, int maxweight, int mmc) |
int maxweight, int mmc, unsigned mode) |
{ |
{ |
struct opt *o; |
struct opt *o; |
unsigned len; |
unsigned len; |
|
|
exit(1); |
exit(1); |
} |
} |
memcpy(o->name, name, len + 1); |
memcpy(o->name, name, len + 1); |
o->wpar = *wpar; |
if (mode & MODE_RECMASK) |
o->rpar = *rpar; |
o->wpar = (mode & MODE_MON) ? *rpar : *wpar; |
|
if (mode & MODE_PLAY) |
|
o->rpar = *rpar; |
o->maxweight = maxweight; |
o->maxweight = maxweight; |
o->mmc = mmc; |
o->mmc = mmc; |
|
o->mode = mode; |
#ifdef DEBUG |
#ifdef DEBUG |
if (debug_level >= 2) { |
if (debug_level >= 2) { |
dbg_puts(o->name); |
dbg_puts(o->name); |
dbg_puts(": rec "); |
dbg_puts(":"); |
aparams_dbg(&o->wpar); |
if (mode & MODE_REC) { |
dbg_puts(", play "); |
dbg_puts(" rec="); |
aparams_dbg(&o->rpar); |
dbg_putu(o->wpar.cmin); |
dbg_puts(", vol "); |
dbg_puts(":"); |
dbg_putu(o->maxweight); |
dbg_putu(o->wpar.cmax); |
|
} |
|
if (mode & MODE_PLAY) { |
|
dbg_puts(" play="); |
|
dbg_putu(o->rpar.cmin); |
|
dbg_puts(":"); |
|
dbg_putu(o->rpar.cmax); |
|
dbg_puts(" vol="); |
|
dbg_putu(o->maxweight); |
|
} |
|
if (mode & MODE_MON) { |
|
dbg_puts(" mon="); |
|
dbg_putu(o->wpar.cmin); |
|
dbg_puts(":"); |
|
dbg_putu(o->wpar.cmax); |
|
} |
if (o->mmc) |
if (o->mmc) |
dbg_puts(", mmc"); |
dbg_puts(" mmc"); |
dbg_puts("\n"); |
dbg_puts("\n"); |
} |
} |
#endif |
#endif |