File indexing completed on 2024-05-26 04:05:33

0001 /*
0002     SPDX-FileCopyrightText: 2020 MBition GmbH
0003     SPDX-FileContributor: Kai Uwe Broulik <kai_uwe.broulik@mbition.io>
0004 
0005     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0006 */
0007 
0008 #ifndef SOLID_BACKENDS_IMOBILE_IMOBILEDEVICE_H
0009 #define SOLID_BACKENDS_IMOBILE_IMOBILEDEVICE_H
0010 
0011 #include <QStringList>
0012 #include <solid/devices/ifaces/device.h>
0013 
0014 namespace Solid
0015 {
0016 namespace Backends
0017 {
0018 namespace IMobile
0019 {
0020 class IMobileDevice : public Solid::Ifaces::Device
0021 {
0022     Q_OBJECT
0023 
0024 public:
0025     explicit IMobileDevice(const QString &udi);
0026     ~IMobileDevice() override;
0027 
0028     QString udi() const override;
0029     QString parentUdi() const override;
0030 
0031     QString vendor() const override;
0032     QString product() const override;
0033     QString icon() const override;
0034     QStringList emblems() const override;
0035     QString description() const override;
0036 
0037     bool queryDeviceInterface(const Solid::DeviceInterface::Type &type) const override;
0038 
0039     QObject *createDeviceInterface(const Solid::DeviceInterface::Type &type) override;
0040 
0041 private:
0042     QString m_udi;
0043 
0044     QString m_name;
0045     QString m_deviceClass;
0046 };
0047 
0048 } // namespace IMobile
0049 } // namespace Backends
0050 } // namespace Solid
0051 
0052 #endif // SOLID_BACKENDS_IMOBILE_IMOBILEDEVICE_H