PulseAudio Qt Bindings

source.h
1/*
2 SPDX-FileCopyrightText: 2014-2015 Harald Sitter <sitter@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6
7#ifndef SOURCE_H
8#define SOURCE_H
9
10#include "device.h"
11
12struct pa_source_info;
13
14namespace PulseAudioQt
15{
16/**
17 * A PulseAudio source. This class is based on https://freedesktop.org/software/pulseaudio/doxygen/structpa__source__info.html.
18 */
19class PULSEAUDIOQT_EXPORT Source : public Device
20{
21 Q_OBJECT
22
23public:
24 ~Source() override;
25
26 void setVolume(qint64 volume) override;
27 void setMuted(bool muted) override;
28 void setActivePortIndex(quint32 port_index) override;
29 void setChannelVolume(int channel, qint64 volume) override;
30 void setChannelVolumes(const QList<qint64> &volumes) override;
31
32 bool isDefault() const override;
33 void setDefault(bool enable) override;
34
35 void switchStreams() override;
36
37private:
38 explicit Source(QObject *parent);
39
40 std::unique_ptr<class SourcePrivate> d;
41 friend class MapBase<Source, pa_source_info>;
42};
43
44} // PulseAudioQt
45
46#endif // SOURCE_H
A PulseAudio device.
Definition device.h:25
Maps a specific index to a specific object pointer.
Definition pulseobject.h:19
A PulseAudio source.
Definition source.h:20
The primary namespace of PulseAudioQt.
Definition card.cpp:17
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:18:01 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.