File indexing completed on 2024-04-21 05:33:27

0001 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0002 // SPDX-FileCopyrightText: 2021 Harald Sitter <sitter@kde.org>
0003 
0004 #pragma once
0005 
0006 #include <QObject>
0007 
0008 class Device;
0009 
0010 /** Abstraction interface for device discovery. Implemented as a Solid variant for example. */
0011 class DeviceNotifier : public QObject
0012 {
0013     Q_OBJECT
0014 public:
0015     using QObject::QObject;
0016     virtual void start() = 0;
0017     virtual void loadData() = 0;
0018 
0019 Q_SIGNALS:
0020     void addDevice(Device *device);
0021     void removeUDI(const QString &udi);
0022 };