Solid

frontend/deviceinterface.h
1 /*
2  SPDX-FileCopyrightText: 2006-2007 Kevin Ottens <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5 */
6 
7 #ifndef SOLID_DEVICEINTERFACE_H
8 #define SOLID_DEVICEINTERFACE_H
9 
10 #include <QObject>
11 
12 #include <solid/solid_export.h>
13 
14 namespace Solid
15 {
16 class Device;
17 class DevicePrivate;
18 class Predicate;
19 class DeviceInterfacePrivate;
20 
27 class SOLID_EXPORT DeviceInterface : public QObject
28 {
29  Q_OBJECT
30  Q_DECLARE_PRIVATE(DeviceInterface)
31 
32 public:
48  enum Type { Unknown = 0, GenericInterface = 1, Processor = 2,
49  Block = 3, StorageAccess = 4, StorageDrive = 5,
51  Camera = 9, PortableMediaPlayer = 10,
52  Battery = 12, NetworkShare = 14, Last = 0xffff
53  };
54  Q_ENUM(Type)
55 
56 
59  virtual ~DeviceInterface();
60 
67  bool isValid() const;
68 
73  static QString typeToString(Type type);
74 
79  static Type stringToType(const QString &type);
80 
86  static QString typeDescription(Type type);
87 
88 protected:
96  DeviceInterface(DeviceInterfacePrivate &dd, QObject *backendObject);
97 
98  DeviceInterfacePrivate *d_ptr;
99 
100 private:
101  friend class Device;
102  friend class DevicePrivate;
103 };
104 }
105 
106 #endif
This class implements Portable Media Player device interface and represents a portable media player a...
This class allows applications to deal with devices available in the underlying system.
This device interface is available on digital camera devices.
Base class of all the device interfaces.
Type
This enum type defines the type of device interface that a Device can have.
This device interface is available on optical discs.
NetworkShare interface.
This device interface is available on batteries.
This device interface is available on volume devices to access them (i.e.
This device interface is available on block devices.
This device interface is available on volume devices.
This device interface is available on processors.
The single responsibility of this class is to create arguments valid for logind Inhibit call...
Generic interface to deal with a device.
This device interface is available on storage devices.
This device interface is available on CD-R*,DVD*,Blu-Ray,HD-DVD drives.
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Thu Sep 17 2020 22:49:48 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.