8 #include "bitspopup.inc"
10 #include "playbackconfig.inc"
11 #include "preferencesthread.inc"
12 #include "recordconfig.inc"
23 PreferencesWindow
*pwindow
,
24 PreferencesDialog
*dialog
,
25 AudioOutConfig
*out_config
,
26 AudioInConfig
*in_config
,
31 static int get_h(int recording
= 0);
32 int update(AudioOutConfig
*out_config
);
33 // creation - set if this is the first initialize of the object
34 // to prevent file format from being overwritten
35 int initialize(int creation
= 0);
38 PreferencesWindow
*pwindow
;
41 int create_oss_objs();
42 int create_esound_objs();
43 int create_firewire_objs();
44 int create_alsa_objs();
46 int delete_oss_objs();
47 int delete_esound_objs();
48 int delete_firewire_objs();
49 int delete_alsa_objs();
51 // The output config resolved from playback strategy and render engine.
52 AudioOutConfig
*out_config
;
53 AudioInConfig
*in_config
;
54 PreferencesDialog
*dialog
;
59 BC_Title
*driver_title
, *path_title
, *bits_title
;
60 BC_Title
*server_title
, *port_title
, *channel_title
, *syt_title
;
61 OSSEnable
*oss_enable
[MAXDEVICES
];
62 ADeviceTextBox
*oss_path
[MAXDEVICES
];
64 ADeviceTextBox
*esound_server
;
65 ADeviceIntBox
*esound_port
;
66 ADeviceIntBox
*firewire_port
;
67 ADeviceIntBox
*firewire_channel
;
68 ADeviceTextBox
*firewire_path
;
69 ADeviceIntBox
*firewire_syt
;
72 ALSADevice
*alsa_device
;
74 BC_CheckBox
*alsa_workaround
;
75 ArrayList
<BC_ListBoxItem
*> *alsa_drivers
;
78 class ADriverMenu
: public BC_PopupMenu
83 ADevicePrefs
*device_prefs
,
88 void create_objects();
89 char* adriver_to_string(int driver
);
93 ADevicePrefs
*device_prefs
;
94 char string
[BCTEXTLEN
];
97 class ADriverItem
: public BC_MenuItem
100 ADriverItem(ADriverMenu
*popup
, char *text
, int driver
);
107 class OSSEnable
: public BC_CheckBox
110 OSSEnable(int x
, int y
, int *output
);
117 class ADeviceTextBox
: public BC_TextBox
120 ADeviceTextBox(int x
, int y
, char *output
);
125 class ADeviceIntBox
: public BC_TextBox
128 ADeviceIntBox(int x
, int y
, int *output
);
133 class ALSADevice
: public BC_PopupTextBox
136 ALSADevice(PreferencesDialog
*dialog
,
140 ArrayList
<BC_ListBoxItem
*> *devices
);