blob: e753fc934af8ab8a26aa86536f0f6363f99482b9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#pragma once
#include <tqobject.h>
#include <tqstring.h>
class TQWidget;
class AudioDevice : public TQObject
{
TQ_OBJECT
public:
enum Category {
Output, // sinks, hardware output
Input, // sources, hardware input
Playback, // sink inputs (per-app playback streams)
Recording, // source outputs (per-app recording streams)
};
AudioDevice( TQObject *parent = 0 ) : TQObject(parent) {}
virtual ~AudioDevice() {}
virtual TQString name() const = 0;
virtual Category category() const = 0;
virtual int volume() const = 0; // 0-100
virtual bool muted() const = 0;
virtual void setVolume( int v ) = 0;
virtual void setMuted( bool m ) = 0;
// Creates the widget for this device. Caller takes ownership.
virtual TQWidget *createWidget( TQWidget *parent ) = 0;
signals:
void volumeChanged( int v );
void muteChanged( bool m );
void nameChanged( const TQString &name );
};
|