summaryrefslogtreecommitdiffstats
path: root/tdecore/tdehw/tdehardwaredevices.h
diff options
context:
space:
mode:
Diffstat (limited to 'tdecore/tdehw/tdehardwaredevices.h')
-rw-r--r--tdecore/tdehw/tdehardwaredevices.h680
1 files changed, 4 insertions, 676 deletions
diff --git a/tdecore/tdehw/tdehardwaredevices.h b/tdecore/tdehw/tdehardwaredevices.h
index fcf60533d..710d7bd8e 100644
--- a/tdecore/tdehw/tdehardwaredevices.h
+++ b/tdecore/tdehw/tdehardwaredevices.h
@@ -33,6 +33,10 @@
#include <locale.h>
#include <unistd.h>
+// FIXME delete those headers after complete porting
+#include "tdegenericdevice.h"
+#include "tdestoragedevice.h"
+
/**
* Hardware Device Access and Monitoring Library
*
@@ -53,145 +57,6 @@ enum TDEHardwareEvent {
};
};
-// Keep readGenericDeviceTypeFromString(), getFriendlyDeviceTypeStringFromType(), and getDeviceTypeIconFromType() in tdehardwaredevices.cpp in sync with this enum
-namespace TDEGenericDeviceType {
-enum TDEGenericDeviceType {
- Root,
- RootSystem,
- CPU,
- GPU,
- RAM,
- Bus,
- I2C,
- MDIO,
- Mainboard,
- Disk,
- SCSI,
- StorageController,
- Mouse,
- Keyboard,
- HID,
- Modem,
- Monitor,
- Network,
- Printer,
- Scanner,
- Sound,
- VideoCapture,
- IEEE1394,
- PCMCIA,
- Camera,
- TextIO,
- Serial,
- Parallel,
- Peripheral,
- Backlight,
- Battery,
- PowerSupply,
- Dock,
- ThermalSensor,
- ThermalControl,
- BlueTooth,
- Bridge,
- Platform,
- Cryptography,
- Event,
- Input,
- PNP,
- OtherACPI,
- OtherUSB,
- OtherMultimedia,
- OtherPeripheral,
- OtherSensor,
- OtherVirtual,
- Other,
- Last = Other
-};
-};
-
-// Keep readDiskDeviceSubtypeFromString() in tdehardwaredevices.cpp in sync with this enum
-namespace TDEDiskDeviceType {
-enum TDEDiskDeviceType {
- Null = 0x00000000,
- MediaDevice = 0x00000001,
- Floppy = 0x00000002,
- CDROM = 0x00000004,
- CDRW = 0x00000008,
- DVDROM = 0x00000010,
- DVDRAM = 0x00000020,
- DVDRW = 0x00000040,
- BDROM = 0x00000080,
- BDRW = 0x00000100,
- Zip = 0x00000200,
- Jaz = 0x00000400,
- Camera = 0x00000800,
- LUKS = 0x00001000,
- OtherCrypted = 0x00002000,
- CDAudio = 0x00004000,
- CDVideo = 0x00008000,
- DVDVideo = 0x00010000,
- BDVideo = 0x00020000,
- Flash = 0x00040000,
- USB = 0x00080000,
- Tape = 0x00100000,
- HDD = 0x00200000,
- Optical = 0x00400000,
- RAM = 0x00800000,
- Loop = 0x01000000,
- CompactFlash = 0x02000000,
- MemoryStick = 0x04000000,
- SmartMedia = 0x08000000,
- SDMMC = 0x10000000,
- UnlockedCrypt = 0x20000000,
- Other = 0x80000000
-};
-
-inline TDEDiskDeviceType operator|(TDEDiskDeviceType a, TDEDiskDeviceType b)
-{
- return static_cast<TDEDiskDeviceType>(static_cast<int>(a) | static_cast<int>(b));
-}
-
-inline TDEDiskDeviceType operator&(TDEDiskDeviceType a, TDEDiskDeviceType b)
-{
- return static_cast<TDEDiskDeviceType>(static_cast<int>(a) & static_cast<int>(b));
-}
-
-inline TDEDiskDeviceType operator~(TDEDiskDeviceType a)
-{
- return static_cast<TDEDiskDeviceType>(~static_cast<int>(a));
-}
-};
-
-namespace TDEDiskDeviceStatus {
-enum TDEDiskDeviceStatus {
- Null = 0x00000000,
- Mountable = 0x00000001,
- Removable = 0x00000002,
- Inserted = 0x00000004,
- Blank = 0x00000008,
- UsedByDevice = 0x00000010,
- UsesDevice = 0x00000020,
- ContainsFilesystem = 0x00000040,
- Hotpluggable = 0x00000080,
- Other = 0x80000000
-};
-
-inline TDEDiskDeviceStatus operator|(TDEDiskDeviceStatus a, TDEDiskDeviceStatus b)
-{
- return static_cast<TDEDiskDeviceStatus>(static_cast<int>(a) | static_cast<int>(b));
-}
-
-inline TDEDiskDeviceStatus operator&(TDEDiskDeviceStatus a, TDEDiskDeviceStatus b)
-{
- return static_cast<TDEDiskDeviceStatus>(static_cast<int>(a) & static_cast<int>(b));
-}
-
-inline TDEDiskDeviceStatus operator~(TDEDiskDeviceStatus a)
-{
- return static_cast<TDEDiskDeviceStatus>(~static_cast<int>(a));
-}
-};
-
class TDECORE_EXPORT TDESensorCluster
{
public:
@@ -208,543 +73,6 @@ class TDECORE_EXPORT TDESensorCluster
double critical;
};
-class TDECORE_EXPORT TDEGenericDevice : public TQObject
-{
- Q_OBJECT
-
- public:
- /**
- * Constructor.
- * @param Device type
- */
- TDEGenericDevice(TDEGenericDeviceType::TDEGenericDeviceType dt, TQString dn=TQString::null);
-
- /**
- * Destructor.
- */
- ~TDEGenericDevice();
-
- /**
- * @return a TDEGenericDeviceType::TDEGenericDeviceType specifying the device type
- */
- TDEGenericDeviceType::TDEGenericDeviceType type();
-
- /**
- * @return a TQString with the device name, if any
- */
- TQString name();
-
- /**
- * @return a TQString with the vendor name, if any
- */
- TQString vendorName();
-
- /**
- * @return a TQString with the vendor model, if any
- */
- TQString vendorModel();
-
- /**
- * @return a TQString with the serial number, if any
- */
- TQString serialNumber();
-
- /**
- * @return a TQString with a friendly name
- *
- * While TDE tries very hard to generate and return a friendly name for this device,
- * sometimes the best it will be able to do is "Unknown Device [xxxx:yyyy]"
- */
- virtual TQString friendlyName();
-
- /**
- * @return a TQString with the device bus name, if any
- */
- TQString deviceBus();
-
- /**
- * @return a TQString with the system path, if any
- *
- * This method is non-portable, so be careful!
- */
- TQString systemPath();
-
- /**
- * @return a TQString with the system device node, if any
- *
- * This method is non-portable, so be careful!
- */
- TQString deviceNode();
-
- /**
- * @return true if this device has been blacklisted for update actions
- */
- bool blacklistedForUpdate();
-
- /**
- * @return a TQString containing a unique identifier for this device
- */
- TQString uniqueID();
-
- /**
- * @return a TQString with the vendor ID, if any
- */
- TQString vendorID();
-
- /**
- * @return a TQString with the model ID, if any
- */
- TQString modelID();
-
- /**
- * @return a TQString with the encoded vendor, if any
- */
- TQString vendorEncoded();
-
- /**
- * @return a TQString with the encoded model, if any
- */
- TQString modelEncoded();
-
- /**
- * @return a TQString with the subvendor ID, if any
- */
- TQString subVendorID();
-
- /**
- * @return a TQString with the submodel ID, if any
- */
- TQString subModelID();
-
- /**
- * @return a TQString with the PCI device class, if any
- */
- TQString PCIClass();
-
- /**
- * @return a TQString with the module alias string, if any
- */
- TQString moduleAlias();
-
- /**
- * @return a TQString with the device driver, if any
- */
- TQString deviceDriver();
-
- /**
- * @return a TQString with the subsystem type, if any
- */
- TQString subsystem();
-
- /**
- * @return a TDEGenericDevice* with the parent device, if any
- */
- TDEGenericDevice* parentDevice();
-
- /**
- * @return a TQString containing the friendly type name
- */
- virtual TQString friendlyDeviceType();
-
- /**
- * @return a TQString containing the device bus ID, if any
- */
- TQString busID();
-
- /**
- * Get an icon for this device
- * @param size a TDEIcon::StdSizes structure specifying the desired icon size
- * @return a TQPixmap containing the icon for the specified type
- */
- virtual TQPixmap icon(TDEIcon::StdSizes size);
-
- protected:
- /**
- * @param a TQString with the device name, if any
- * @internal
- */
- void internalSetName(TQString dn);
-
- /**
- * @param a TQString with the vendor name, if any
- * @internal
- */
- void internalSetVendorName(TQString vn);
-
- /**
- * @param a TQString with the vendor model, if any
- * @internal
- */
- void internalSetVendorModel(TQString vm);
-
- /**
- * @param a TQString with the serial number, if any
- * @internal
- */
- void internalSetSerialNumber(TQString sn);
-
- /**
- * @param a TQString with the device bus name, if any
- * @internal
- */
- void internalSetDeviceBus(TQString db);
-
- /**
- * @param a TQString with the system path, if any
- * @internal
- *
- * This method is non-portable, so be careful!
- */
- void internalSetSystemPath(TQString sp);
-
- /**
- * @param a TQString with the system device node, if any
- * @internal
- *
- * This method is non-portable, so be careful!
- */
- void internalSetDeviceNode(TQString sn);
-
- /**
- * @param bl true if this device has been blacklisted for update actions
- * @internal
- */
- void internalSetBlacklistedForUpdate(bool bl);
-
- /**
- * @param a TQString with the vendor ID, if any
- * @internal
- */
- void internalSetVendorID(TQString id);
-
- /**
- * @param a TQString with the model ID, if any
- * @internal
- */
- void internalSetModelID(TQString id);
-
- /**
- * @param a TQString with the encoded vendor, if any
- * @internal
- */
- void internalSetVendorEncoded(TQString id);
-
- /**
- * @param a TQString with the encoded model, if any
- * @internal
- */
- void internalSetModelEncoded(TQString id);
-
- /**
- * @param a TQString with the subvendor ID, if any
- * @internal
- */
- void internalSetSubVendorID(TQString id);
-
- /**
- * @param a TQString with the submodel ID, if any
- * @internal
- */
- void internalSetSubModelID(TQString id);
-
- /**
- * @param a TQString with the PCI device class, if any
- * @internal
- */
- void internalSetPCIClass(TQString cl);
-
- /**
- * @param a TQString with the module alias string, if any
- * @internal
- */
- void internalSetModuleAlias(TQString ma);
-
- /**
- * @param a TQString with the device driver, if any
- * @internal
- */
- void internalSetDeviceDriver(TQString dr);
-
- /**
- * @param a TQString with the subsystem type, if any
- * @internal
- */
- void internalSetSubsystem(TQString ss);
-
- /**
- * @param a TDEGenericDevice* with the parent device, if any
- * @internal
- */
- void internalSetParentDevice(TDEGenericDevice* pd);
-
- private:
- TDEGenericDeviceType::TDEGenericDeviceType m_deviceType;
- TQString m_deviceName;
- TQString m_systemPath;
- TQString m_deviceNode;
- TQString m_vendorName;
- TQString m_vendorModel;
- TQString m_serialNumber;
- TQString m_deviceBus;
- TQString m_uniqueID;
- TQString m_vendorID;
- TQString m_modelID;
- TQString m_vendorenc;
- TQString m_modelenc;
- TQString m_subvendorID;
- TQString m_submodelID;
- TQString m_pciClass;
- TQString m_modAlias;
- TQString m_deviceDriver;
- TQString m_subsystem;
- TQString m_friendlyName;
- bool m_blacklistedForUpdate;
- TDEGenericDevice* m_parentDevice;
-
- // Internal use only!
- TQStringList m_externalSubtype;
- TQString m_externalRulesFile;
- TQString m_udevtype;
- TQString m_udevdevicetypestring;
- TQString udevdevicetypestring_alt;
-
- friend class TDEHardwareDevices;
-};
-
-class TDECORE_EXPORT TDEStorageDevice : public TDEGenericDevice
-{
- public:
- /**
- * Constructor.
- * @param Device type
- */
- TDEStorageDevice(TDEGenericDeviceType::TDEGenericDeviceType dt, TQString dn=TQString::null);
-
- /**
- * Destructor.
- */
- ~TDEStorageDevice();
-
- /**
- * @return a TQString with the disk or partition label, if any
- */
- TQString diskLabel();
-
- /**
- * @return a TQString with the disk UUID, if any
- */
- TQString diskUUID();
-
- /**
- * @return an OR-ed combination of TDEDiskDeviceType::TDEDiskDeviceType type flags
- */
- TDEDiskDeviceType::TDEDiskDeviceType diskType();
-
- /**
- * @return an OR-ed combination of TDEDiskDeviceStatus::TDEDiskDeviceStatus type flags
- */
- TDEDiskDeviceStatus::TDEDiskDeviceStatus diskStatus();
-
- /**
- * @return true if media inserted, false if no media available
- */
- bool mediaInserted();
-
- /**
- * @return a TQString with the filesystem name, if any
- */
- TQString fileSystemName();
-
- /**
- * @return a TQString with the filesystem usage string, if any
- */
- TQString fileSystemUsage();
-
- /**
- * @return a TQStringList containing system paths to all devices with a lock on this device, if any
- */
- TQStringList holdingDevices();
-
- /**
- * @return a TQStringList containing system paths to all devices locked by this device, if any
- */
- TQStringList slaveDevices();
-
- /**
- * Mounts the device if not encrypted
- *
- * @param a TQString containing a requested mount name under /media, if desired
- * @param a TQString containing any mount options for pmount, if desired
- * @param a pointer to a TQString which will be populated with any error messages from pmount, if desired
- * @param a pointer to an integer which will be populated with the return code from pmount, if desired
- *
- * @return a TQString with the mount path, if successful
- */
- TQString mountDevice(TQString mediaName=TQString::null, TQString mountOptions=TQString::null, TQString* errRet=0, int* retcode=0);
-
- /**
- * Mounts the encrypted device if the correct passphrase is given
- *
- * @param a TQString containing the passphrase
- * @param a TQString containing a requested mount name under /media, if desired
- * @param a TQString containing any mount options for pmount, if desired
- * @param a pointer to a TQString which will be populated with any error messages from pmount, if desired
- * @param a pointer to an integer which will be populated with the return code from pmount, if desired
- *
- * @return a TQString with the mount path, if successful
- */
- TQString mountEncryptedDevice(TQString passphrase, TQString mediaName=TQString::null, TQString mountOptions=TQString::null, TQString* errRet=0, int* retcode=0);
-
- /**
- * Unmounts the device
- *
- * @param a pointer to a TQString which will be populated with any error messages from pmount, if desired
- * @param a pointer to an integer which will be populated with the return code from pmount, if desired
- *
- * @return TRUE if unmount was successful
- */
- bool unmountDevice(TQString* errRet, int* retcode=0);
-
- /**
- * @return a TQString with the mount path, if mounted
- */
- TQString mountPath();
-
- /**
- * @return an unsigned long with the device size in bytes
- */
- unsigned long long deviceSize();
-
- /**
- * @return a TQString with the device size in human readable form
- */
- TQString deviceFriendlySize();
-
- /**
- * Get an icon for this device
- * @param size a TDEIcon::StdSizes structure specifying the desired icon size
- * @return a TQPixmap containing the icon for the specified type
- *
- * This method overrides TDEGenericDevice::icon(TDEIcon::StdSizes size)
- */
- TQPixmap icon(TDEIcon::StdSizes size);
-
- /**
- * @return a TQString with a friendly name
- *
- * This method overrides TDEGenericDevice::friendlyName()
- */
- TQString friendlyName();
-
- /**
- * @return a TQString containing the friendly type name
- *
- * This method overrides TDEGenericDevice::friendlyDeviceType()
- */
- TQString friendlyDeviceType();
-
- /**
- * @param an OR-ed combination of TDEDiskDeviceType::TDEDiskDeviceType type flags
- */
- bool isDiskOfType(TDEDiskDeviceType::TDEDiskDeviceType tf);
-
- /**
- * @param an OR-ed combination of TDEDiskDeviceStatus::TDEDiskDeviceStatus type flags
- */
- bool checkDiskStatus(TDEDiskDeviceStatus::TDEDiskDeviceStatus sf);
-
- /**
- * @param TRUE to engage media lock, FALSE to disable it
- * @return TRUE on success, FALSE on failure
- *
- * This method currently works on CD-ROM drives and similar devices
- */
- bool lockDriveMedia(bool lock);
-
- /**
- * @return TRUE on success, FALSE on failure
- *
- * This method currently works on CD-ROM drives and similar devices
- */
- bool ejectDriveMedia();
-
- /**
- * @return TRUE on success, FALSE on failure
- *
- * This method currently works on all removable storage devices
- */
- bool ejectDrive();
-
- protected:
- /**
- * @param a TQString with the disk or partition label, if any
- * @internal
- */
- void internalSetDiskLabel(TQString dn);
-
- /**
- * @param a TQString with the disk UUID, if any
- * @internal
- */
- void internalSetDiskUUID(TQString id);
-
- /**
- * @param an OR-ed combination of TDEDiskDeviceType::TDEDiskDeviceType type flags
- * @internal
- */
- void internalSetDiskType(TDEDiskDeviceType::TDEDiskDeviceType tf);
-
- /**
- * @param an OR-ed combination of TDEDiskDeviceStatus::TDEDiskDeviceStatus type flags
- * @internal
- */
- void internalSetDiskStatus(TDEDiskDeviceStatus::TDEDiskDeviceStatus st);
-
- /**
- * @param a bool with the media status
- * @internal
- */
- void internalSetMediaInserted(bool inserted);
-
- /**
- * @param a TQString with the filesystem name, if any
- * @internal
- */
- void internalSetFileSystemName(TQString fn);
-
- /**
- * @param a TQString with the filesystem usage string, if any
- * @internal
- */
- void internalSetFileSystemUsage(TQString fu);
-
- /**
- * @param a TQStringList containing system paths to all devices with a lock on this device, if any
- * @internal
- */
- void internalSetHoldingDevices(TQStringList hd);
-
- /**
- * @param a TQStringList containing system paths to all devices locked by this device, if any
- * @internal
- */
- void internalSetSlaveDevices(TQStringList sd);
-
- private:
- TDEDiskDeviceType::TDEDiskDeviceType m_diskType;
- TDEDiskDeviceStatus::TDEDiskDeviceStatus m_diskStatus;
- TQString m_diskName;
- TQString m_diskUUID;
- TQString m_fileSystemName;
- TQString m_fileSystemUsage;
- bool m_mediaInserted;
- TQString m_mountPath;
- TQStringList m_holdingDevices;
- TQStringList m_slaveDevices;
-
- friend class TDEHardwareDevices;
-};
-
class TDECORE_EXPORT TDECPUDevice : public TDEGenericDevice
{
public: