Mistake on this page?
Report an issue in GitHub or email us
Public Member Functions
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 FATFileSystem LittleFileSystem

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 44 of file FileSystemHandle.h.

Constructor & Destructor Documentation

virtual ~FileSystemHandle ( )
virtual

FileSystemHandle lifetime.

Definition at line 48 of file FileSystemHandle.h.

Member Function Documentation

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 LittleFileSystem, FATFileSystem, and FileSystem.

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 FileSystem.

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 FileSystem.

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 LittleFileSystem, FATFileSystem, and FileSystem.

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 LittleFileSystem, FATFileSystem, and FileSystem.

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 LittleFileSystem, FATFileSystem, and FileSystem.

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 LittleFileSystem, FATFileSystem, and FileSystem.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.