File indexing completed on 2024-12-01 07:27:24
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 PORT_H 0008 #define PORT_H 0009 0010 #include "profile.h" 0011 #include "pulseaudioqt_export.h" 0012 0013 namespace PulseAudioQt 0014 { 0015 /** 0016 * A PulseAudio port. 0017 */ 0018 class PULSEAUDIOQT_EXPORT Port : public Profile 0019 { 0020 Q_OBJECT 0021 Q_PROPERTY(Type type READ type NOTIFY typeChanged) 0022 0023 public: 0024 ~Port(); 0025 0026 enum Type { 0027 Unknown, 0028 AUX, 0029 Speaker, 0030 Headphones, 0031 Line, 0032 Mic, 0033 Headset, 0034 Handset, 0035 Earpiece, 0036 SPDIF, 0037 HDMI, 0038 TV, 0039 Radio, 0040 Video, 0041 USB, 0042 Bluetooth, 0043 Portable, 0044 Handsfree, 0045 Car, 0046 HiFi, 0047 Phone, 0048 Network, 0049 Analog, 0050 }; 0051 Q_ENUM(Type) 0052 0053 Type type() const; 0054 0055 Q_SIGNALS: 0056 void typeChanged(); 0057 0058 protected: 0059 /** @private */ 0060 explicit Port(QObject *parent); 0061 /** @private */ 0062 class PortPrivate *const d; 0063 0064 friend class DevicePrivate; 0065 friend class CardPrivate; 0066 }; 0067 0068 } // PulseAudioQt 0069 0070 #endif // PORT_H