Blame alsamixer/mixer_controls.h

Packit Service a9274b
#ifndef MIXER_CONTROLS_H_INCLUDED
Packit Service a9274b
#define MIXER_CONTROLS_H_INCLUDED
Packit Service a9274b
Packit Service a9274b
#include <alsa/asoundlib.h>
Packit Service a9274b
Packit Service a9274b
struct control {
Packit Service a9274b
	snd_mixer_elem_t *elem;
Packit Service a9274b
	char *name;
Packit Service a9274b
	unsigned int flags;
Packit Service a9274b
#define TYPE_PVOLUME	(1u << 4)
Packit Service a9274b
#define TYPE_CVOLUME	(1u << 5)
Packit Service a9274b
#define TYPE_PSWITCH	(1u << 6)
Packit Service a9274b
#define TYPE_CSWITCH	(1u << 7)
Packit Service a9274b
#define TYPE_ENUM	(1u << 8)
Packit Service a9274b
#define HAS_VOLUME_0	(1u << 9)
Packit Service a9274b
#define HAS_VOLUME_1	(1u << 10)
Packit Service a9274b
#define HAS_PSWITCH_0	(1u << 11)
Packit Service a9274b
#define HAS_PSWITCH_1	(1u << 12)
Packit Service a9274b
#define HAS_CSWITCH_0	(1u << 13)
Packit Service a9274b
#define HAS_CSWITCH_1	(1u << 14)
Packit Service a9274b
#define IS_MULTICH	(1u << 15)
Packit Service a9274b
#define IS_ACTIVE	(1u << 16)
Packit Service a9274b
#define MULTICH_MASK	(0x0000f)
Packit Service a9274b
	snd_mixer_selem_channel_id_t volume_channels[2];
Packit Service a9274b
	snd_mixer_selem_channel_id_t pswitch_channels[2];
Packit Service a9274b
	snd_mixer_selem_channel_id_t cswitch_channels[2];
Packit Service a9274b
	unsigned int enum_channel_bits;
Packit Service a9274b
};
Packit Service a9274b
Packit Service a9274b
extern struct control *controls;
Packit Service a9274b
extern unsigned int controls_count;
Packit Service a9274b
Packit Service a9274b
bool are_there_any_controls(void);
Packit Service a9274b
void create_controls(void);
Packit Service a9274b
void free_controls(void);
Packit Service a9274b
Packit Service a9274b
#endif