• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef MIXER_WIDGET_H_INCLUDED
2 #define MIXER_WIDGET_H_INCLUDED
3 
4 #include CURSESINC
5 #include <alsa/asoundlib.h>
6 #include "widget.h"
7 
8 enum view_mode {
9 	VIEW_MODE_PLAYBACK,
10 	VIEW_MODE_CAPTURE,
11 	VIEW_MODE_ALL,
12 	VIEW_MODE_COUNT,
13 };
14 
15 enum channel_mask {
16 	LEFT = 1,
17 	RIGHT = 2,
18 };
19 
20 extern snd_mixer_t *mixer;
21 extern char *mixer_device_name;
22 extern bool unplugged;
23 
24 extern struct widget mixer_widget;
25 
26 extern enum view_mode view_mode;
27 
28 extern int focus_control_index;
29 extern snd_mixer_selem_id_t *current_selem_id;
30 extern unsigned int current_control_flags;
31 
32 extern bool control_values_changed;
33 extern bool controls_changed;
34 
35 extern unsigned int mouse_wheel_step;
36 extern bool mouse_wheel_focuses_control;
37 
38 void create_mixer_object(struct snd_mixer_selem_regopt *selem_regopt);
39 void create_mixer_widget(void);
40 void mixer_shutdown(void);
41 void close_mixer_device(void);
42 bool select_card_by_name(const char *device_name);
43 void refocus_control(void);
44 
45 #endif
46