File indexing completed on 2024-12-01 04:21:39
0001 /* 0002 SPDX-FileCopyrightText: 2014-2015 Harald Sitter <sitter@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #ifndef SOURCEOUTPUT_H 0008 #define SOURCEOUTPUT_H 0009 0010 #include "stream.h" 0011 0012 struct pa_source_output_info; 0013 0014 namespace PulseAudioQt 0015 { 0016 /** 0017 * A SourceOutput Stream. 0018 */ 0019 class PULSEAUDIOQT_EXPORT SourceOutput : public Stream 0020 { 0021 Q_OBJECT 0022 0023 public: 0024 ~SourceOutput(); 0025 0026 void setVolume(qint64 volume) override; 0027 void setMuted(bool muted) override; 0028 void setChannelVolume(int channel, qint64 volume) override; 0029 void setDeviceIndex(quint32 deviceIndex) override; 0030 void setChannelVolumes(const QVector<qint64> &channelVolumes) override; 0031 0032 private: 0033 explicit SourceOutput(QObject *parent); 0034 0035 class SourceOutputPrivate *const d; 0036 friend class MapBase<SourceOutput, pa_source_output_info>; 0037 }; 0038 0039 } // PulseAudioQt 0040 0041 #endif // SOURCEOUTPUT_H