Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: FATFileSystem.h
- Revision:
- 4:3ff2606d5713
- Parent:
- 3:e960e2b81a3c
- Child:
- 5:b3b3370574cf
--- a/FATFileSystem.h Mon Mar 17 14:09:00 2014 +0000
+++ b/FATFileSystem.h Thu Aug 28 13:15:31 2014 +0100
@@ -30,8 +30,8 @@
using namespace mbed;
/**
- * FATFileSystem based on ChaN's Fat Filesystem library v0.8
- */
+ * FATFileSystem based on ChaN's Fat Filesystem library v0.8
+ */
class FATFileSystem : public FileSystemLike {
public:
@@ -41,36 +41,51 @@
static FATFileSystem * _ffs[_VOLUMES]; // FATFileSystem objects, as parallel to FatFs drives array
FATFS _fs; // Work area (file system object) for logical drive
int _fsid;
-
+
/**
- * Opens a file on the filesystem
- */
+ * Opens a file on the filesystem
+ */
virtual FileHandle *open(const char* name, int flags);
/**
* Removes a file path
*/
virtual int remove(const char *filename);
-
+
+ /**
+ * Renames a file
+ */
+ virtual int rename(const char *oldname, const char *newname);
+
/**
* Formats a logical drive, FDISK artitioning rule, 512 bytes per cluster
*/
virtual int format();
-
+
/**
- * Opens a directory on the filesystem
- */
+ * Opens a directory on the filesystem
+ */
virtual DirHandle *opendir(const char *name);
/**
* Creates a directory path
*/
virtual int mkdir(const char *name, mode_t mode);
+
+ /**
+ * Mounts the filesystem
+ */
+ virtual int mount();
+
+ /**
+ * Unmounts the filesystem
+ */
+ virtual int unmount();
virtual int disk_initialize() { return 0; }
virtual int disk_status() { return 0; }
- virtual int disk_read(uint8_t * buffer, uint64_t sector) = 0;
- virtual int disk_write(const uint8_t * buffer, uint64_t sector) = 0;
+ virtual int disk_read(uint8_t * buffer, uint64_t sector, uint8_t count) = 0;
+ virtual int disk_write(const uint8_t * buffer, uint64_t sector, uint8_t count) = 0;
virtual int disk_sync() { return 0; }
virtual uint64_t disk_sectors() = 0;