Mbed OS Reference
Loading...
Searching...
No Matches
FileSystemHandle Class Referenceabstract

A filesystem-like object is one that can be used to open file-like objects though it by fopen("/name/filename", mode) More...

#include <FileSystemHandle.h>

Inheritance diagram for FileSystemHandle:
NonCopyable< FileSystemHandle > FileSystemLike FileSystem LocalFileSystem FATFileSystem LittleFileSystem LittleFileSystem2

Public Member Functions

virtual ~FileSystemHandle ()
 FileSystemHandle lifetime. More...
 
virtual int open (FileHandle **file, const char *filename, int flags)=0
 Open a file on the filesystem. More...
 
virtual int open (DirHandle **dir, const char *path)
 Open a directory on the filesystem. More...
 
virtual int remove (const char *path)
 Remove a file from the filesystem. More...
 
virtual int rename (const char *path, const char *newpath)
 Rename a file in the filesystem. More...
 
virtual int stat (const char *path, struct stat *st)
 Store information about the file in a stat structure. More...
 
virtual int mkdir (const char *path, mode_t mode)
 Create a directory in the filesystem. More...
 
virtual int statvfs (const char *path, struct statvfs *buf)
 Store information about the mounted filesystem in a statvfs structure. More...
 

Detailed Description

A filesystem-like object is one that can be used to open file-like objects though it by fopen("/name/filename", mode)

Implementations must define at least open (the default definitions of the rest of the functions just return error values).

Note
Synchronization level: Set by subclass

Definition at line 42 of file FileSystemHandle.h.

Constructor & Destructor Documentation

◆ ~FileSystemHandle()

virtual ~FileSystemHandle ( )
virtual

FileSystemHandle lifetime.

Definition at line 46 of file FileSystemHandle.h.

Member Function Documentation

◆ open() [1/2]

virtual int open ( FileHandle **  file,
const char *  filename,
int  flags 
)
pure virtual

Open a file on the filesystem.

Parameters
fileDestination for the handle to a newly created file
filenameThe name of the file to open
flagsThe flags to open the file in, one of O_RDONLY, O_WRONLY, O_RDWR, bitwise or'd with one of O_CREAT, O_TRUNC, O_APPEND
Returns
0 on success, negative error code on failure

Implemented in LocalFileSystem, and FileSystem.

◆ open() [2/2]

virtual int open ( DirHandle **  dir,
const char *  path 
)
virtual

Open a directory on the filesystem.

Parameters
dirDestination for the handle to the directory
pathName of the directory to open
Returns
0 on success, negative error code on failure

Reimplemented in LocalFileSystem, and FileSystem.

◆ remove()

virtual int remove ( const char *  path)
virtual

Remove a file from the filesystem.

Parameters
pathThe name of the file to remove.
Returns
0 on success, negative error code on failure

Reimplemented in LocalFileSystem, FATFileSystem, FileSystem, LittleFileSystem, and LittleFileSystem2.

◆ rename()

virtual int rename ( const char *  path,
const char *  newpath 
)
virtual

Rename a file in the filesystem.

Parameters
pathThe name of the file to rename.
newpathThe name to rename it to
Returns
0 on success, negative error code on failure

Reimplemented in FATFileSystem, FileSystem, LittleFileSystem, and LittleFileSystem2.

◆ stat()

virtual int stat ( const char *  path,
struct stat st 
)
virtual

Store information about the file in a stat structure.

Parameters
pathThe name of the file to find information about
stThe stat buffer to write to
Returns
0 on success, negative error code on failure

Reimplemented in FATFileSystem, FileSystem, LittleFileSystem, and LittleFileSystem2.

◆ mkdir()

virtual int mkdir ( const char *  path,
mode_t  mode 
)
virtual

Create a directory in the filesystem.

Parameters
pathThe name of the directory to create.
modeThe permissions with which to create the directory
Returns
0 on success, negative error code on failure

Reimplemented in FATFileSystem, FileSystem, LittleFileSystem, and LittleFileSystem2.

◆ statvfs()

virtual int statvfs ( const char *  path,
struct statvfs buf 
)
virtual

Store information about the mounted filesystem in a statvfs structure.

Parameters
pathThe name of the file to find information about
bufThe stat buffer to write to
Returns
0 on success, negative error code on failure

Reimplemented in FATFileSystem, FileSystem, LittleFileSystem, and LittleFileSystem2.