Add support for a user provided file system.

This commit is contained in:
inmarket 2017-01-09 10:25:30 +10:00
parent 9216504ce3
commit c7cce84274
3 changed files with 24 additions and 0 deletions

View File

@ -4,6 +4,9 @@
*** Changes after 2.7 ***
FEATURE: Added support for 128x32 SSD1306 based displays
FIX: Fixed recursion bug in console history
FIX: Multithreading issue with slow window redraws and large images
FIX: Ensure valid thread stack sizes on platforms where it matters
*** Release 2.7 ***

View File

@ -16,6 +16,9 @@
* Virtual file-systems that have special open() calls do not need to
* be in this list.
*/
#if GFILE_NEED_USERFS
extern const GFILEVMT FsUSERVMT;
#endif
#if GFILE_NEED_ROMFS
extern const GFILEVMT FsROMVMT;
#endif
@ -35,6 +38,9 @@
* that they are searched to find a file.
*/
static const GFILEVMT const * FsArray[] = {
#if GFILE_NEED_USERFS
&FsUSERVMT,
#endif
#if GFILE_NEED_ROMFS
&FsROMVMT,
#endif

View File

@ -75,6 +75,21 @@
#ifndef GFILE_NEED_STDIO
#define GFILE_NEED_STDIO FALSE
#endif
/**
* @brief Include the USER file system
* @details Defaults to FALSE
* @note The User FS vmt strcture 'FsUSERVMT' must be defined and implemented in the user's project.
* @note If GFILE_ALLOW_DEVICESPECIFIC is on then you can ensure that you are
* opening a file on the USER file system by prefixing
* its name with "U|" (the letter 'U', followed by a vertical bar).
* The letter 'U' as described above should be replaced by the actual
* device specifier letter in the user's FsUSERVMT structure. It is suggested
* that it is actually the letter 'U' that is used and it is important that the letter
* used is not one used by the other file systems.
*/
#ifndef GFILE_NEED_USERFS
#define GFILE_NEED_USERFS FALSE
#endif
/**
* @brief Include the ROM file system
* @details Defaults to FALSE