//////////////////////////////////////////////////////////////////////////////// // // Copyright (c) Ubisoft Entertainment. All rights reserved. // // ProjectFolder: disk // BelongsToModule: gearsystemdetectionhardware // ScanFlags: Ignore // //////////////////////////////////////////////////////////////////////////////// #pragma once #ifndef GEAR_SYSTEMDETECTIONDISK__INCLUDED #define GEAR_SYSTEMDETECTIONDISK__INCLUDED GEAR_BEGIN_MODULE(systemdetection, gearsystemdetectionhardware) namespace SystemDetection { class GEAR_DLL_ENTRY Disk { public: virtual ~Disk() {} /// Free space (in bytes) on this disk unsigned long long freeSpace; /// Used space (in bytes) on this disk unsigned long long usedSpace; /// Total space (in bytes) available on this disk unsigned long long totalSpace; /// Returns the windows drive letter associated with this disk /*! \return Drive letter */ virtual const char* GetDriveLetter() const = 0; /// Get the device identifier /*! \return Device identifier */ virtual const char* GetDeviceId() const = 0; /// Get file system type /*! \return File system */ virtual const char* GetFileSystem() const = 0; }; class GEAR_DLL_ENTRY LogicalDisks { public: virtual ~LogicalDisks() {}; /// Get disk from list of available disks /*! Available disks are stored in a list, and this method must be used to retrieve them. \param index Disk index \return Pointer to the disk at the specified index. Returns null if the index is invalid, or greater than the available disk count. */ virtual const Disk* GetDisk(unsigned long index) const = 0; }; }//namespace SystemDetection GEAR_END_MODULE() #endif