Add EngineDevice class

This commit is contained in:
Jonas Kvinge
2023-06-01 19:31:19 +02:00
parent a1dbbba1a1
commit 315073f9a7
20 changed files with 170 additions and 111 deletions

View File

@@ -24,24 +24,13 @@
#include "config.h"
#include <QList>
#include <QVariant>
#include <QString>
#include "enginedevice.h"
// Finds audio output devices
class DeviceFinder {
public:
struct Device {
Device() : card(0), device(0) {}
QString description;
QVariant value;
QString iconname;
int card;
int device;
};
using DeviceList = QList<Device>;
virtual ~DeviceFinder() {}
QString name() const { return name_; }
@@ -52,13 +41,11 @@ class DeviceFinder {
virtual bool Initialize() = 0;
// Returns a list of available devices.
virtual DeviceList ListDevices() = 0;
virtual EngineDeviceList ListDevices() = 0;
protected:
explicit DeviceFinder(const QString &name, const QStringList &outputs);
static QString GuessIconName(const QString &description);
private:
QString name_;
QStringList outputs_;