Logo Search packages:      
Sourcecode: alsa-utils version File versions  Download package

mixer_controls.h

#ifndef MIXER_CONTROLS_H_INCLUDED
#define MIXER_CONTROLS_H_INCLUDED

#include <alsa/asoundlib.h>

00006 struct control {
      snd_mixer_elem_t *elem;
      char *name;
      unsigned int flags;
#define TYPE_PVOLUME    (1u << 4)
#define TYPE_CVOLUME    (1u << 5)
#define TYPE_PSWITCH    (1u << 6)
#define TYPE_CSWITCH    (1u << 7)
#define TYPE_ENUM (1u << 8)
#define HAS_VOLUME_0    (1u << 9)
#define HAS_VOLUME_1    (1u << 10)
#define HAS_PSWITCH_0   (1u << 11)
#define HAS_PSWITCH_1   (1u << 12)
#define HAS_CSWITCH_0   (1u << 13)
#define HAS_CSWITCH_1   (1u << 14)
#define IS_MULTICH      (1u << 15)
#define IS_ACTIVE (1u << 16)
#define MULTICH_MASK    (0x0000f)
      snd_mixer_selem_channel_id_t volume_channels[2];
      snd_mixer_selem_channel_id_t pswitch_channels[2];
      snd_mixer_selem_channel_id_t cswitch_channels[2];
      unsigned int enum_channel_bits;
};

extern struct control *controls;
extern unsigned int controls_count;

bool are_there_any_controls(void);
void create_controls(void);
void free_controls(void);

#endif

Generated by  Doxygen 1.6.0   Back to index