Renesas GR-PEACH OpenCV Development / gr-peach-opencv-project-sd-card_update

Fork of gr-peach-opencv-project-sd-card by the do

Embed: (wiki syntax)

« Back to documentation index

FileSystem Class Reference

A filesystem object provides filesystem operations and file operations for the File and Dir classes on a block device. More...

#include <FileSystem.h>

Inherits mbed::FileSystemLike.

Inherited by FATFileSystem.

Public Member Functions

 FileSystem (const char *name=NULL)
 FileSystem lifetime.
virtual int mount (BlockDevice *bd)=0
 Mounts a filesystem to a block device.
virtual int unmount ()=0
 Unmounts a filesystem from the underlying block device.
virtual int remove (const char *path)
 Remove a file from the filesystem.
virtual int rename (const char *path, const char *newpath)
 Rename a file in the filesystem.
virtual int stat (const char *path, struct stat *st)
 Store information about the file in a stat structure.
virtual int mkdir (const char *path, mode_t mode)
 Create a directory in the filesystem.
 MBED_DEPRECATED_SINCE ("mbed-os-5.5","Replaced by `int open(FileHandle **, ...)` for propagating error codes") FileHandle *open(const char *path
 Open a file on the filesystem.

Protected Member Functions

virtual int file_open (fs_file_t *file, const char *path, int flags)=0
 Open a file on the filesystem.
virtual int file_close (fs_file_t file)=0
 Close a file.
virtual ssize_t file_read (fs_file_t file, void *buffer, size_t size)=0
 Read the contents of a file into a buffer.
virtual ssize_t file_write (fs_file_t file, const void *buffer, size_t size)=0
 Write the contents of a buffer to a file.
virtual int file_sync (fs_file_t file)
 Flush any buffers associated with the file.
virtual int file_isatty (fs_file_t file)
 Check if the file in an interactive terminal device If so, line buffered behaviour is used by default.
virtual off_t file_seek (fs_file_t file, off_t offset, int whence)=0
 Move the file position to a given offset from from a given location.
virtual off_t file_tell (fs_file_t file)
 Get the file position of the file.
virtual void file_rewind (fs_file_t file)
 Rewind the file position to the beginning of the file.
virtual off_t file_size (fs_file_t file)
 Get the size of the file.
virtual int dir_open (fs_dir_t *dir, const char *path)
 Open a directory on the filesystem.
virtual int dir_close (fs_dir_t dir)
 Close a directory.
virtual ssize_t dir_read (fs_dir_t dir, struct dirent *ent)
 Read the next directory entry.
virtual void dir_seek (fs_dir_t dir, off_t offset)
 Set the current position of the directory.
virtual off_t dir_tell (fs_dir_t dir)
 Get the current position of the directory.
virtual void dir_rewind (fs_dir_t dir)
 Rewind the current position to the beginning of the directory.
virtual size_t dir_size (fs_dir_t dir)
 Get the sizeof the directory.
virtual int open (FileHandle **file, const char *path, int flags)
 Open a file on the filesystem.
virtual int open (DirHandle **dir, const char *path)
 Open a directory on the filesystem.

Detailed Description

A filesystem object provides filesystem operations and file operations for the File and Dir classes on a block device.

Implementations must provide at minimum file operations and mount operations for block devices.

Synchronization level: Set by subclass

Definition at line 49 of file FileSystem.h.


Constructor & Destructor Documentation

FileSystem ( const char *  name = NULL )

FileSystem lifetime.


Member Function Documentation

virtual int dir_close ( fs_dir_t  dir ) [protected, virtual]

Close a directory.

Parameters:
dirDir handle return 0 on success, negative error code on failure

Reimplemented in FATFileSystem.

virtual int dir_open ( fs_dir_t *  dir,
const char *  path 
) [protected, 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 FATFileSystem.

virtual ssize_t dir_read ( fs_dir_t  dir,
struct dirent *  ent 
) [protected, virtual]

Read the next directory entry.

Parameters:
dirDir handle
entThe directory entry to fill out
Returns:
1 on reading a filename, 0 at end of directory, negative error on failure

Reimplemented in FATFileSystem.

virtual void dir_rewind ( fs_dir_t  dir ) [protected, virtual]

Rewind the current position to the beginning of the directory.

Parameters:
dirDir handle

Reimplemented in FATFileSystem.

virtual void dir_seek ( fs_dir_t  dir,
off_t  offset 
) [protected, virtual]

Set the current position of the directory.

Parameters:
dirDir handle
offsetOffset of the location to seek to, must be a value returned from dir_tell

Reimplemented in FATFileSystem.

virtual size_t dir_size ( fs_dir_t  dir ) [protected, virtual]

Get the sizeof the directory.

Parameters:
dirDir handle
Returns:
Number of files in the directory
virtual off_t dir_tell ( fs_dir_t  dir ) [protected, virtual]

Get the current position of the directory.

Parameters:
dirDir handle
Returns:
Position of the directory that can be passed to dir_rewind

Reimplemented in FATFileSystem.

virtual int file_close ( fs_file_t  file ) [protected, pure virtual]

Close a file.

Parameters:
fileFile handle return 0 on success, negative error code on failure

Implemented in FATFileSystem.

virtual int file_isatty ( fs_file_t  file ) [protected, virtual]

Check if the file in an interactive terminal device If so, line buffered behaviour is used by default.

Parameters:
fileFile handle
Returns:
True if the file is a terminal
virtual int file_open ( fs_file_t *  file,
const char *  path,
int  flags 
) [protected, pure virtual]

Open a file on the filesystem.

Parameters:
fileDestination for the handle to a newly created file
pathThe 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 FATFileSystem.

virtual ssize_t file_read ( fs_file_t  file,
void *  buffer,
size_t  size 
) [protected, pure virtual]

Read the contents of a file into a buffer.

Parameters:
fileFile handle
bufferThe buffer to read in to
sizeThe number of bytes to read
Returns:
The number of bytes read, 0 at end of file, negative error on failure

Implemented in FATFileSystem.

virtual void file_rewind ( fs_file_t  file ) [protected, virtual]

Rewind the file position to the beginning of the file.

Parameters:
fileFile handle
Note:
This is equivalent to file_seek(file, 0, FS_SEEK_SET)
virtual off_t file_seek ( fs_file_t  file,
off_t  offset,
int  whence 
) [protected, pure virtual]

Move the file position to a given offset from from a given location.

Parameters:
fileFile handle
offsetThe offset from whence to move to
whenceThe start of where to seek SEEK_SET to start from beginning of file, SEEK_CUR to start from current position in file, SEEK_END to start from end of file
Returns:
The new offset of the file

Implemented in FATFileSystem.

virtual off_t file_size ( fs_file_t  file ) [protected, virtual]

Get the size of the file.

Parameters:
fileFile handle
Returns:
Size of the file in bytes

Reimplemented in FATFileSystem.

virtual int file_sync ( fs_file_t  file ) [protected, virtual]

Flush any buffers associated with the file.

Parameters:
fileFile handle
Returns:
0 on success, negative error code on failure

Reimplemented in FATFileSystem.

virtual off_t file_tell ( fs_file_t  file ) [protected, virtual]

Get the file position of the file.

Parameters:
fileFile handle
Returns:
The current offset in the file

Reimplemented in FATFileSystem.

virtual ssize_t file_write ( fs_file_t  file,
const void *  buffer,
size_t  size 
) [protected, pure virtual]

Write the contents of a buffer to a file.

Parameters:
fileFile handle
bufferThe buffer to write from
sizeThe number of bytes to write
Returns:
The number of bytes written, negative error on failure

Implemented in FATFileSystem.

MBED_DEPRECATED_SINCE ( "mbed-os-5.5"  ,
"Replaced by `int open(FileHandle **, ...)` for propagating error codes"   
) const [inherited]

Open a file on the filesystem.

Parameters:
pathThe 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:
A file handle on success, NULL on failure
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 from FileSystemHandle.

Reimplemented in FATFileSystem.

virtual int mount ( BlockDevice bd ) [pure virtual]

Mounts a filesystem to a block device.

Parameters:
bdBlockDevice to mount to
Returns:
0 on success, negative error code on failure

Implemented in FATFileSystem.

virtual int open ( DirHandle **  dir,
const char *  path 
) [protected, 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 from FileSystemHandle.

virtual int open ( FileHandle **  file,
const char *  filename,
int  flags 
) [protected, 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

Implements FileSystemHandle.

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 from FileSystemHandle.

Reimplemented in FATFileSystem.

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 from FileSystemHandle.

Reimplemented in FATFileSystem.

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 from FileSystemHandle.

Reimplemented in FATFileSystem.

virtual int unmount (  ) [pure virtual]

Unmounts a filesystem from the underlying block device.

Returns:
0 on success, negative error code on failure

Implemented in FATFileSystem.