mbed library sources. Supersedes mbed-src.

Dependents:   Nucleo_Hello_Encoder BLE_iBeaconScan AM1805_DEMO DISCO-F429ZI_ExportTemplate1 ... more

Embed: (wiki syntax)

« Back to documentation index

LocalFileSystem Class Reference

A filesystem for accessing the local mbed Microcontroller USB disk drive. More...

#include <LocalFileSystem.h>

Inherits mbed::FileSystemLike, NonCopyable< LocalFileSystem >, mbed::FileSystemLike, and NonCopyable< LocalFileSystem >.

Public Member Functions

virtual int open (FileHandle **file, const char *path, int flags)
 Open a file on the filesystem.
virtual int open (DirHandle **dir, const char *name)
 Open a directory on the filesystem.
virtual int remove (const char *filename)
 Remove a file from the filesystem.
virtual int open (FileHandle **file, const char *path, int flags)
 Open a file on the filesystem.
virtual int open (DirHandle **dir, const char *name)
 Open a directory on the filesystem.
virtual int remove (const char *filename)
 Remove a file from 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.
 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.
virtual int rename (const char *path, const char *newpath)
 Rename a file in 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 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.
virtual int mkdir (const char *path, mode_t mode)
 Create a directory in the filesystem.
virtual int statvfs (const char *path, struct statvfs *buf)
 Store information about the mounted filesystem in a statvfs structure.
virtual int statvfs (const char *path, struct statvfs *buf)
 Store information about the mounted filesystem in a statvfs structure.

Protected Member Functions

 MBED_DEPRECATED ("Invalid copy construction of a NonCopyable resource.") NonCopyable(const NonCopyable &)
 NonCopyable copy constructor.
 MBED_DEPRECATED ("Invalid copy assignment of a NonCopyable resource.") NonCopyable &operator
 NonCopyable copy assignment operator.
 MBED_DEPRECATED ("Invalid copy construction of a NonCopyable resource.") NonCopyable(const NonCopyable &)
 NonCopyable copy constructor.
 MBED_DEPRECATED ("Invalid copy assignment of a NonCopyable resource.") NonCopyable &operator
 NonCopyable copy assignment operator.
 MBED_DEPRECATED ("Invalid copy construction of a NonCopyable resource.") NonCopyable(const NonCopyable &)
 NonCopyable copy constructor.
 MBED_DEPRECATED ("Invalid copy assignment of a NonCopyable resource.") NonCopyable &operator
 NonCopyable copy assignment operator.

Private Member Functions

 MBED_DEPRECATED ("Invalid copy construction of a NonCopyable resource.") NonCopyable(const NonCopyable &)
 NonCopyable copy constructor.
 MBED_DEPRECATED ("Invalid copy assignment of a NonCopyable resource.") NonCopyable &operator
 NonCopyable copy assignment operator.

Detailed Description

A filesystem for accessing the local mbed Microcontroller USB disk drive.

This allows programs to read and write files on the same disk drive that is used to program the mbed Microcontroller. Once created, the standard C file access functions are used to open, read and write files.

Note:
Synchronization level: Thread safe

Example:

 #include "mbed.h"

 LocalFileSystem local("local");               // Create the local filesystem under the name "local"

 int main() {
     FILE *fp = fopen("/local/out.txt", "w");  // Open "out.txt" on the local file system for writing
     fprintf(fp, "Hello World!");
     fclose(fp);
     remove("/local/out.txt");                 // Removes the file "out.txt" from the local file system

     DIR *d = opendir("/local");               // Opens the root directory of the local file system
     struct dirent *p;
     while((p = readdir(d)) != NULL) {         // Print the names of the files in the local file system
       printf("%s\n", p->d_name);              // to stdout.
     }
     closedir(d);
 }
Note:
If the microcontroller program makes an access to the local drive, it will be marked as "removed" on the Host computer. This means it is no longer accessible from the Host Computer.

The drive will only re-appear when the microcontroller program exists. Note that if the program does not exit, you will need to hold down reset on the mbed Microcontroller to be able to see the drive again!

Definition at line 106 of file cmsis/BUILD/mbed/platform/LocalFileSystem.h.


Member Function Documentation

MBED_DEPRECATED ( "Invalid copy construction of a NonCopyable< FileSystemHandle > resource."   ) const [protected, inherited]

NonCopyable copy constructor.

A compile time warning is issued when this function is used, and a runtime warning is printed when the copy construction of the noncopyable happens.

If you see this warning, your code is probably doing something unspecified. Copying of noncopyable resources can lead to resource leak and random error.

Definition at line 190 of file cmsis/BUILD/mbed/platform/NonCopyable.h.

MBED_DEPRECATED ( "Invalid copy assignment of a NonCopyable< FileSystemLike > resource."   ) [protected, inherited]

NonCopyable copy assignment operator.

A compile time warning is issued when this function is used, and a runtime warning is printed when the copy construction of the noncopyable happens.

If you see this warning, your code is probably doing something unspecified. Copying of noncopyable resources can lead to resource leak and random error.

MBED_DEPRECATED ( "Invalid copy assignment of a NonCopyable< FileSystemHandle > resource."   ) [protected, inherited]

NonCopyable copy assignment operator.

A compile time warning is issued when this function is used, and a runtime warning is printed when the copy construction of the noncopyable happens.

If you see this warning, your code is probably doing something unspecified. Copying of noncopyable resources can lead to resource leak and random error.

MBED_DEPRECATED ( "Invalid copy construction of a NonCopyable< FileBase > resource."   ) const [protected, inherited]

NonCopyable copy constructor.

A compile time warning is issued when this function is used, and a runtime warning is printed when the copy construction of the noncopyable happens.

If you see this warning, your code is probably doing something unspecified. Copying of noncopyable resources can lead to resource leak and random error.

Definition at line 190 of file cmsis/BUILD/mbed/platform/NonCopyable.h.

MBED_DEPRECATED ( "Invalid copy assignment of a NonCopyable< FileBase > resource."   ) [protected, inherited]

NonCopyable copy assignment operator.

A compile time warning is issued when this function is used, and a runtime warning is printed when the copy construction of the noncopyable happens.

If you see this warning, your code is probably doing something unspecified. Copying of noncopyable resources can lead to resource leak and random error.

MBED_DEPRECATED ( "Invalid copy construction of a NonCopyable< FileSystemLike > resource."   ) const [protected, inherited]

NonCopyable copy constructor.

A compile time warning is issued when this function is used, and a runtime warning is printed when the copy construction of the noncopyable happens.

If you see this warning, your code is probably doing something unspecified. Copying of noncopyable resources can lead to resource leak and random error.

Definition at line 190 of file cmsis/BUILD/mbed/platform/NonCopyable.h.

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
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
int mkdir ( const char *  path,
mode_t  mode 
) [virtual, inherited]

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

Definition at line 43 of file FileSystemHandle.cpp.

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

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

Definition at line 293 of file LocalFileSystem.cpp.

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

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

Definition at line 261 of file LocalFileSystem.cpp.

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.

Definition at line 286 of file LocalFileSystem.cpp.

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.

int rename ( const char *  path,
const char *  newpath 
) [virtual, inherited]

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

Definition at line 33 of file FileSystemHandle.cpp.

virtual int rename ( const char *  path,
const char *  newpath 
) [virtual, inherited]

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
virtual int stat ( const char *  path,
struct stat *  st 
) [virtual, inherited]

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
int stat ( const char *  path,
struct stat *  st 
) [virtual, inherited]

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

Definition at line 38 of file FileSystemHandle.cpp.

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

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
int statvfs ( const char *  path,
struct statvfs *  buf 
) [virtual, inherited]

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

Definition at line 48 of file FileSystemHandle.cpp.