Add AlsaMixer.app to repository
[dockapps.git] / AlsaMixer.app / AMixer / AItem.h
blob0f4f71a292b8bee5e3a5b0022e8e1fbabf85538f
1 // AItem.h, Petr Hlavka, 2004
3 #ifndef AITEM_H
4 #define AITEM_H
6 #include "AMixer.h"
7 #include "AChannel.h"
9 #include <alsa/asoundlib.h>
10 #include <vector>
13 class AChannel;
14 class AMixer;
16 class AItem {
17 private:
18 AMixer *mixer; // parent mixer
19 std::vector<AChannel *> pbChannels; // item channels
21 long minPVolume, maxPVolume; // min/max playback volume
22 bool hPVolume; // has Playback volume
23 bool hPSwitch; // has Playback switch
25 public:
26 snd_mixer_elem_t *aElem; // mixer item element
27 const char *name; // item name
29 AItem(AMixer *m, snd_mixer_elem_t *e); // ctor
30 ~AItem(); // dtor
32 void setVolumePerc(unsigned int percent);
33 unsigned int getVolumePerc();
34 bool isMuted();
35 void mute();
36 void unmute();
39 #endif