20 #ifndef _TDESTORAGEDEVICE_H
21 #define _TDESTORAGEDEVICE_H
23 #include "tdegenericdevice.h"
27 #if __cplusplus >= 201103L
32 Null = 0x0000000000000000ULL,
33 MediaDevice = 0x0000000000000001ULL,
34 Floppy = 0x0000000000000002ULL,
35 CDROM = 0x0000000000000004ULL,
36 CDR = 0x0000000000000008ULL,
37 CDRW = 0x0000000000000010ULL,
38 CDMO = 0x0000000000000020ULL,
39 CDMRRW = 0x0000000000000040ULL,
40 CDMRRWW = 0x0000000000000080ULL,
41 DVDROM = 0x0000000000000100ULL,
42 DVDRAM = 0x0000000000000200ULL,
43 DVDR = 0x0000000000000400ULL,
44 DVDRW = 0x0000000000000800ULL,
45 DVDRDL = 0x0000000000001000ULL,
46 DVDRWDL = 0x0000000000002000ULL,
47 DVDPLUSR = 0x0000000000004000ULL,
48 DVDPLUSRW = 0x0000000000008000ULL,
49 DVDPLUSRDL = 0x0000000000010000ULL,
50 DVDPLUSRWDL = 0x0000000000020000ULL,
51 BDROM = 0x0000000000040000ULL,
52 BDR = 0x0000000000080000ULL,
53 BDRW = 0x0000000000100000ULL,
54 HDDVDROM = 0x0000000000200000ULL,
55 HDDVDR = 0x0000000000400000ULL,
56 HDDVDRW = 0x0000000000800000ULL,
57 Zip = 0x0000000001000000ULL,
58 Jaz = 0x0000000002000000ULL,
59 Camera = 0x0000000004000000ULL,
60 LUKS = 0x0000000008000000ULL,
61 OtherCrypted = 0x0000000010000000ULL,
62 CDAudio = 0x0000000020000000ULL,
63 CDVideo = 0x0000000040000000ULL,
64 DVDVideo = 0x0000000080000000ULL,
65 BDVideo = 0x0000000100000000ULL,
66 Flash = 0x0000000200000000ULL,
67 USB = 0x0000000400000000ULL,
68 Tape = 0x0000000800000000ULL,
69 HDD = 0x0000001000000000ULL,
70 Optical = 0x0000002000000000ULL,
71 RAM = 0x0000004000000000ULL,
72 Loop = 0x0000008000000000ULL,
73 CompactFlash = 0x0000010000000000ULL,
74 MemoryStick = 0x0000020000000000ULL,
75 SmartMedia = 0x0000040000000000ULL,
76 SDMMC = 0x0000080000000000ULL,
77 UnlockedCrypt = 0x0000100000000000ULL,
78 Other = 0x8000000000000000ULL
83 return static_cast<TDEDiskDeviceType>(
static_cast<unsigned long long>(a) | static_cast<unsigned long long>(b));
88 return static_cast<TDEDiskDeviceType>(
static_cast<unsigned long long>(a) & static_cast<unsigned long long>(b));
100 Mountable = 0x00000001,
101 Removable = 0x00000002,
102 Inserted = 0x00000004,
104 UsedByDevice = 0x00000010,
105 UsesDevice = 0x00000020,
106 ContainsFilesystem = 0x00000040,
107 Hotpluggable = 0x00000080,
128 typedef TQMap<TQString,TQString> TDEStorageMountOptions;
130 class TDECORE_EXPORT TDEStorageDevice :
public TDEGenericDevice
137 TDEStorageDevice(TDEGenericDeviceType::TDEGenericDeviceType dt, TQString dn=TQString::null);
147 TQString diskLabel();
157 TDEDiskDeviceType::TDEDiskDeviceType diskType();
162 TDEDiskDeviceStatus::TDEDiskDeviceStatus diskStatus();
167 bool mediaInserted();
172 TQString fileSystemName();
177 TQString fileSystemUsage();
182 TQStringList holdingDevices();
187 TQStringList slaveDevices();
199 TQString mountDevice(TQString mediaName=TQString::null, TDEStorageMountOptions mountOptions=TDEStorageMountOptions(), TQString* errRet=0,
int* retcode=0);
212 TQString mountEncryptedDevice(TQString passphrase, TQString mediaName=TQString::null, TDEStorageMountOptions mountOptions=TDEStorageMountOptions(), TQString* errRet=0,
int* retcode=0);
222 bool unmountDevice(TQString* errRet,
int* retcode=0);
227 TQString mountPath();
232 unsigned long long deviceSize();
237 TQString deviceFriendlySize();
253 TQString friendlyName();
260 TQString detailedFriendlyName();
267 TQString friendlyDeviceType();
272 bool isDiskOfType(TDEDiskDeviceType::TDEDiskDeviceType tf);
277 bool checkDiskStatus(TDEDiskDeviceStatus::TDEDiskDeviceStatus sf);
285 bool lockDriveMedia(
bool lock);
292 bool ejectDriveMedia();
306 static TQString determineFileSystemType(TQString path);
313 void internalSetDiskLabel(TQString dn);
319 void internalSetDiskUUID(TQString
id);
325 void internalSetDiskType(TDEDiskDeviceType::TDEDiskDeviceType tf);
331 void internalSetDiskStatus(TDEDiskDeviceStatus::TDEDiskDeviceStatus st);
337 void internalSetMediaInserted(
bool inserted);
343 void internalSetFileSystemName(TQString fn);
349 void internalSetFileSystemUsage(TQString fu);
355 void internalSetHoldingDevices(TQStringList hd);
361 void internalSetSlaveDevices(TQStringList sd);
364 TDEDiskDeviceType::TDEDiskDeviceType m_diskType;
365 TDEDiskDeviceStatus::TDEDiskDeviceStatus m_diskStatus;
368 TQString m_fileSystemName;
369 TQString m_fileSystemUsage;
370 bool m_mediaInserted;
371 TQString m_mountPath;
372 TQStringList m_holdingDevices;
373 TQStringList m_slaveDevices;
375 friend class TDEHardwareDevices;
378 #endif // _TDESTORAGEDEVICE_H
StdSizes
These are the standard sizes for icons.