1/* 2 * ES1370 Haiku Driver for ES1370 audio 3 * 4 * Copyright 2002-2007, Haiku, Inc. 5 * Distributed under the terms of the MIT License. 6 * 7 * Authors: 8 * Jerome Duval, jerome.duval@free.fr 9 */ 10 11#ifndef _MULTI_H_ 12#define _MULTI_H_ 13 14typedef struct _multi_mixer_control { 15 struct _multi_dev *multi; 16 void (*get) (void *card, const void *cookie, int32 type, float *values); 17 void (*set) (void *card, const void *cookie, int32 type, float *values); 18 const void *cookie; 19 int32 type; 20 multi_mix_control mix_control; 21} multi_mixer_control; 22 23#define EMU_MULTI_CONTROL_FIRSTID 1024 24#define EMU_MULTI_CONTROL_MASTERID 0 25 26typedef struct _multi_dev { 27 void *card; 28#define EMU_MULTICONTROLSNUM 64 29 multi_mixer_control controls[EMU_MULTICONTROLSNUM]; 30 uint32 control_count; 31 32#define EMU_MULTICHANNUM 64 33 multi_channel_info chans[EMU_MULTICHANNUM]; 34 uint32 output_channel_count; 35 uint32 input_channel_count; 36 uint32 output_bus_channel_count; 37 uint32 input_bus_channel_count; 38 uint32 aux_bus_channel_count; 39} multi_dev; 40 41#endif 42