• Skip to content
  • Skip to link menu
KDE 4.7 API Reference
  • KDE API Reference
  • kdelibs
  • KDE Home
  • Contact Us
 

Solid

deviceinterface.h
Go to the documentation of this file.
00001 /*
00002     Copyright 2006-2007 Kevin Ottens <ervin@kde.org>
00003 
00004     This library is free software; you can redistribute it and/or
00005     modify it under the terms of the GNU Lesser General Public
00006     License as published by the Free Software Foundation; either
00007     version 2.1 of the License, or (at your option) version 3, or any
00008     later version accepted by the membership of KDE e.V. (or its
00009     successor approved by the membership of KDE e.V.), which shall
00010     act as a proxy defined in Section 6 of version 3 of the license.
00011 
00012     This library is distributed in the hope that it will be useful,
00013     but WITHOUT ANY WARRANTY; without even the implied warranty of
00014     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00015     Lesser General Public License for more details.
00016 
00017     You should have received a copy of the GNU Lesser General Public
00018     License along with this library. If not, see <http://www.gnu.org/licenses/>.
00019 */
00020 
00021 #ifndef SOLID_DEVICEINTERFACE_H
00022 #define SOLID_DEVICEINTERFACE_H
00023 
00024 #include <QtCore/QObject>
00025 #include <QtCore/QBool>
00026 
00027 #include <solid/solid_export.h>
00028 
00029 namespace Solid
00030 {
00031     class Device;
00032     class DevicePrivate;
00033     class Predicate;
00034     class DeviceInterfacePrivate;
00035 
00042     class SOLID_EXPORT DeviceInterface : public QObject
00043     {
00044         Q_OBJECT
00045         Q_ENUMS(Type)
00046         Q_DECLARE_PRIVATE(DeviceInterface)
00047 
00048     public:
00067         enum Type { Unknown = 0, GenericInterface = 1, Processor = 2,
00068                     Block = 3, StorageAccess = 4, StorageDrive = 5,
00069                     OpticalDrive = 6, StorageVolume = 7, OpticalDisc = 8,
00070                     Camera = 9, PortableMediaPlayer = 10,
00071                     NetworkInterface = 11, AcAdapter = 12, Battery = 13,
00072                     Button = 14, AudioInterface = 15, DvbInterface = 16, Video = 17,
00073                     SerialInterface = 18, SmartCardReader = 19, InternetGateway = 20,
00074                     NetworkShare = 21, Last = 0xffff  };
00075 
00079         virtual ~DeviceInterface();
00080 
00087         bool isValid() const;
00088 
00093         static QString typeToString(Type type);
00094 
00099         static Type stringToType(const QString &type);
00100 
00106         static QString typeDescription(Type type);
00107 
00108     protected:
00116         DeviceInterface(DeviceInterfacePrivate &dd, QObject *backendObject);
00117 
00118         DeviceInterfacePrivate *d_ptr;
00119 
00120     private:
00121         friend class Device;
00122         friend class DevicePrivate;
00123     };
00124 }
00125 
00126 #endif

Solid

Skip menu "Solid"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.7.5
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal