1*f6dc9357SAndroid Build Coastguard Worker // FSDrives.h 2*f6dc9357SAndroid Build Coastguard Worker 3*f6dc9357SAndroid Build Coastguard Worker #ifndef ZIP7_INC_FS_DRIVES_H 4*f6dc9357SAndroid Build Coastguard Worker #define ZIP7_INC_FS_DRIVES_H 5*f6dc9357SAndroid Build Coastguard Worker 6*f6dc9357SAndroid Build Coastguard Worker #include "../../../Common/MyCom.h" 7*f6dc9357SAndroid Build Coastguard Worker #include "../../../Common/MyString.h" 8*f6dc9357SAndroid Build Coastguard Worker 9*f6dc9357SAndroid Build Coastguard Worker #include "IFolder.h" 10*f6dc9357SAndroid Build Coastguard Worker 11*f6dc9357SAndroid Build Coastguard Worker struct CDriveInfo 12*f6dc9357SAndroid Build Coastguard Worker { 13*f6dc9357SAndroid Build Coastguard Worker FString Name; 14*f6dc9357SAndroid Build Coastguard Worker FString FullSystemName; 15*f6dc9357SAndroid Build Coastguard Worker UInt64 DriveSize; 16*f6dc9357SAndroid Build Coastguard Worker UInt64 FreeSpace; 17*f6dc9357SAndroid Build Coastguard Worker UInt64 ClusterSize; 18*f6dc9357SAndroid Build Coastguard Worker // UString Type; 19*f6dc9357SAndroid Build Coastguard Worker UString VolumeName; 20*f6dc9357SAndroid Build Coastguard Worker UString FileSystemName; 21*f6dc9357SAndroid Build Coastguard Worker UINT DriveType; 22*f6dc9357SAndroid Build Coastguard Worker 23*f6dc9357SAndroid Build Coastguard Worker bool KnownSize; 24*f6dc9357SAndroid Build Coastguard Worker bool KnownSizes; 25*f6dc9357SAndroid Build Coastguard Worker bool IsPhysicalDrive; 26*f6dc9357SAndroid Build Coastguard Worker 27*f6dc9357SAndroid Build Coastguard Worker FString GetDeviceFileIoName() const; CDriveInfoCDriveInfo28*f6dc9357SAndroid Build Coastguard Worker CDriveInfo(): KnownSize(false), KnownSizes(false), IsPhysicalDrive(false) {} 29*f6dc9357SAndroid Build Coastguard Worker }; 30*f6dc9357SAndroid Build Coastguard Worker 31*f6dc9357SAndroid Build Coastguard Worker Z7_CLASS_IMP_NOQIB_3( 32*f6dc9357SAndroid Build Coastguard Worker CFSDrives 33*f6dc9357SAndroid Build Coastguard Worker , IFolderFolder 34*f6dc9357SAndroid Build Coastguard Worker , IFolderOperations 35*f6dc9357SAndroid Build Coastguard Worker , IFolderGetSystemIconIndex 36*f6dc9357SAndroid Build Coastguard Worker ) 37*f6dc9357SAndroid Build Coastguard Worker CObjectVector<CDriveInfo> _drives; 38*f6dc9357SAndroid Build Coastguard Worker bool _volumeMode; 39*f6dc9357SAndroid Build Coastguard Worker bool _superMode; 40*f6dc9357SAndroid Build Coastguard Worker 41*f6dc9357SAndroid Build Coastguard Worker HRESULT BindToFolderSpec(CFSTR name, IFolderFolder **resultFolder); 42*f6dc9357SAndroid Build Coastguard Worker void AddExt(FString &s, unsigned index) const; 43*f6dc9357SAndroid Build Coastguard Worker HRESULT GetFileSize(unsigned index, UInt64 &fileSize) const; 44*f6dc9357SAndroid Build Coastguard Worker public: 45*f6dc9357SAndroid Build Coastguard Worker void Init(bool volMode = false, bool superMode = false) 46*f6dc9357SAndroid Build Coastguard Worker { 47*f6dc9357SAndroid Build Coastguard Worker _volumeMode = volMode; 48*f6dc9357SAndroid Build Coastguard Worker _superMode = superMode; 49*f6dc9357SAndroid Build Coastguard Worker } 50*f6dc9357SAndroid Build Coastguard Worker }; 51*f6dc9357SAndroid Build Coastguard Worker 52*f6dc9357SAndroid Build Coastguard Worker #endif 53