objc

Data Structures | Macros | Typedefs | Functions
fs.h File Reference

File system abstraction layer for lightweight embedded & host storage. More...

#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
Include dependency graph for fs.h:

Go to the source code of this file.

Data Structures

struct  fs_file_t
 File and directory metadata. More...
 

Macros

#define FS_PATH_MAX   255
 Maximum length of a single path component.
 
#define FS_PATH_SEPARATOR   '/'
 Path separator character.
 

Typedefs

typedef struct fs_volume_t fs_volume_t
 Opaque filesystem volume handle.
 

Functions

fs_volume_tfs_vol_init_memory (size_t size)
 Create a new volatile (RAM) filesystem volume. More...
 
fs_volume_tfs_vol_init_file (const char *path, size_t size)
 Open or create a host file–backed persistent volume. More...
 
fs_volume_tfs_vol_init_flash (size_t size)
 Open or create a non-volatile flash-backed persistent volume. More...
 
void fs_vol_finalize (fs_volume_t *volume)
 Unmount and release all resources for a volume. More...
 
size_t fs_vol_size (fs_volume_t *volume, size_t *free)
 Return total addressable size of a mounted volume. More...
 
bool fs_vol_readdir (fs_volume_t *volume, const char *path, fs_file_t *iterator)
 Iterate directory entries. More...
 
fs_file_t fs_vol_stat (fs_volume_t *volume, const char *path)
 Lookup file or directory metadata for a path. More...
 
bool fs_vol_mkdir (fs_volume_t *volume, const char *path)
 Create a directory. More...
 
bool fs_vol_remove (fs_volume_t *volume, const char *path)
 Remove a file or (empty) directory. More...
 
bool fs_vol_move (fs_volume_t *volume, const char *old_path, const char *new_path)
 Move or rename a file/directory. More...
 
fs_file_t fs_file_create (fs_volume_t *volume, const char *path)
 Create a new file or truncate an existing file to zero length. More...
 
fs_file_t fs_file_open (fs_volume_t *volume, const char *path, bool write)
 Open an existing file for read/write. More...
 
bool fs_file_close (fs_file_t *file)
 Close an opened file. More...
 
size_t fs_file_read (fs_file_t *file, void *buffer, size_t size)
 Read data from an opened file. More...
 
size_t fs_file_write (fs_file_t *file, const void *buffer, size_t size)
 Write data to an opened file. More...
 
bool fs_file_seek (fs_file_t *file, size_t offset)
 Seek to a position within an opened file. More...
 

Detailed Description

File system abstraction layer for lightweight embedded & host storage.

Definition in file fs.h.