RUI3 (RAK Unified Interface 3) - RAK4631
service_fs.h File Reference

Provide filesystem service layer. More...

Go to the source code of this file.

Data Structures

struct  _SERVICE_FS_FILE
 
struct  SERVICE_FS_FILE_STAT
 
struct  SERVICE_FS_DIR
 
struct  SERVICE_FS_DIRENT
 

Macros

#define SERVICE_FS_PATH_MAX_LEN   256
 
#define SERVICE_FS_O_APPEND   SPIFFS_APPEND
 
#define SERVICE_FS_O_TRUNC   SPIFFS_TRUNC
 
#define SERVICE_FS_O_CREAT   SPIFFS_CREAT
 
#define SERVICE_FS_O_RDONLY   SPIFFS_RDONLY
 
#define SERVICE_FS_O_WRONLY   SPIFFS_WRONLY
 
#define SERVICE_FS_O_RDWR   SPIFFS_RDWR
 
#define SERVICE_FS_O_DIRECT   SPIFFS_DIRECT
 
#define SERVICE_FS_O_EXCL   SPIFFS_EXCL
 
#define SERVICE_FS_OK   SPIFFS_OK /* (0) Succeeded */
 
#define SERVICE_FS_ERR_NOT_MOUNTED   SPIFFS_ERR_NOT_MOUNTED /* -10000 */
 
#define SERVICE_FS_ERR_FULL   SPIFFS_ERR_FULL /* -10001 */
 
#define SERVICE_FS_ERR_NOT_FOUND   SPIFFS_ERR_NOT_FOUND /* -10002 */
 
#define SERVICE_FS_ERR_END_OF_OBJECT   SPIFFS_ERR_END_OF_OBJECT /* -10003 */
 
#define SERVICE_FS_ERR_DELETED   SPIFFS_ERR_DELETED /* -10004 */
 
#define SERVICE_FS_ERR_NOT_FINALIZED   SPIFFS_ERR_NOT_FINALIZED /* -10005 */
 
#define SERVICE_FS_ERR_NOT_INDEX   SPIFFS_ERR_NOT_INDEX /* -10006 */
 
#define SERVICE_FS_ERR_OUT_OF_FILE_DESCS   SPIFFS_ERR_OUT_OF_FILE_DESCS /* -10007 */
 
#define SERVICE_FS_ERR_FILE_CLOSED   SPIFFS_ERR_FILE_CLOSED /* -10008 */
 
#define SERVICE_FS_ERR_FILE_DELETED   SPIFFS_ERR_FILE_DELETED /* -10009 */
 
#define SERVICE_FS_ERR_BAD_DESCRIPTOR   SPIFFS_ERR_BAD_DESCRIPTOR /* -10010 */
 
#define SERVICE_FS_ERR_IS_INDEX   SPIFFS_ERR_IS_INDEX /* -10011 */
 
#define SERVICE_FS_ERR_IS_FREE   SPIFFS_ERR_IS_FREE /* -10012 */
 
#define SERVICE_FS_ERR_INDEX_SPAN_MISMATCH   SPIFFS_ERR_INDEX_SPAN_MISMATCH /* -10013 */
 
#define SERVICE_FS_ERR_DATA_SPAN_MISMATCH   SPIFFS_ERR_DATA_SPAN_MISMATCH /* -10014 */
 
#define SERVICE_FS_ERR_INDEX_REF_FREE   SPIFFS_ERR_INDEX_REF_FREE /* -10015 */
 
#define SERVICE_FS_ERR_INDEX_REF_LU   SPIFFS_ERR_INDEX_REF_LU /* -10016 */
 
#define SERVICE_FS_ERR_INDEX_REF_INVALID   SPIFFS_ERR_INDEX_REF_INVALID /* -10017 */
 
#define SERVICE_FS_ERR_INDEX_FREE   SPIFFS_ERR_INDEX_FREE /* -10018 */
 
#define SERVICE_FS_ERR_INDEX_LU   SPIFFS_ERR_INDEX_LU /* -10019 */
 
#define SERVICE_FS_ERR_INDEX_INVALID   SPIFFS_ERR_INDEX_INVALID /* -10020 */
 
#define SERVICE_FS_ERR_NOT_WRITABLE   SPIFFS_ERR_NOT_WRITABLE /* -10021 */
 
#define SERVICE_FS_ERR_NOT_READABLE   SPIFFS_ERR_NOT_READABLE /* -10022 */
 
#define SERVICE_FS_ERR_CONFLICTING_NAME   SPIFFS_ERR_CONFLICTING_NAME /* -10023 */
 
#define SERVICE_FS_ERR_NOT_CONFIGURED   SPIFFS_ERR_NOT_CONFIGURED /* -10024 */
 
#define SERVICE_FS_ERR_NOT_A_FS   SPIFFS_ERR_NOT_A_FS /* -10025 */
 
#define SERVICE_FS_ERR_MOUNTED   SPIFFS_ERR_MOUNTED /* -10026 */
 
#define SERVICE_FS_ERR_ERASE_FAIL   SPIFFS_ERR_ERASE_FAIL /* -10027 */
 
#define SERVICE_FS_ERR_MAGIC_NOT_POSSIBLE   SPIFFS_ERR_MAGIC_NOT_POSSIBLE /* -10028 */
 
#define SERVICE_FS_ERR_NO_DELETED_BLOCKS   SPIFFS_ERR_NO_DELETED_BLOCKS /* -10029 */
 
#define SERVICE_FS_ERR_FILE_EXISTS   SPIFFS_ERR_FILE_EXISTS /* -10030 */
 
#define SERVICE_FS_ERR_NOT_A_FILE   SPIFFS_ERR_NOT_A_FILE /* -10031 */
 
#define SERVICE_FS_ERR_RO_NOT_IMPL   SPIFFS_ERR_RO_NOT_IMPL /* -10032 */
 
#define SERVICE_FS_ERR_RO_ABORTED_OPERATION   SPIFFS_ERR_RO_ABORTED_OPERATION /* -10033 */
 
#define SERVICE_FS_ERR_PROBE_TOO_FEW_BLOCKS   SPIFFS_ERR_PROBE_TOO_FEW_BLOCKS /* -10034 */
 
#define SERVICE_FS_ERR_PROBE_NOT_A_FS   SPIFFS_ERR_PROBE_NOT_A_FS /* -10035 */
 
#define SERVICE_FS_ERR_NAME_TOO_LONG   SPIFFS_ERR_NAME_TOO_LONG /* -10036 */
 
#define SERVICE_FS_ERR_IX_MAP_UNMAPPED   SPIFFS_ERR_IX_MAP_UNMAPPED /* -10037 */
 
#define SERVICE_FS_ERR_IX_MAP_MAPPED   SPIFFS_ERR_IX_MAP_MAPPED /* -10038 */
 
#define SERVICE_FS_ERR_IX_MAP_BAD_RANGE   SPIFFS_ERR_IX_MAP_BAD_RANGE /* -10039 */
 
#define SERVICE_FS_ERR_SEEK_BOUNDS   SPIFFS_ERR_SEEK_BOUNDS /* -10040 */
 
#define SERVICE_FS_ERR_INTERNAL   SPIFFS_ERR_INTERNAL /* -10050 */
 
#define SERVICE_FS_ERR_TEST   SPIFFS_ERR_TEST /* -10100 */
 
#define SERVICE_FS_ERR_CONTINUE   (-20000) /* -20000 */
 

Typedefs

typedef struct _SERVICE_FS_FILESERVICE_FS_FILE
 
typedef void * SERVICE_FS
 

Enumerations

enum  SERVICE_FS_FILE_TYPE { SERVICE_FS_FLASH_TYPE }
 

Functions

int32_t service_fs_ferrno (SERVICE_FS_FILE file)
 
int32_t service_fs_derrno (SERVICE_FS_DIR dir)
 
SERVICE_FS service_fs_init (void)
 
SERVICE_FS service_fs_reset (void)
 
int32_t service_fs_list (SERVICE_FS fs, SERVICE_FS_DIR *d, SERVICE_FS_DIRENT *entry)
 
SERVICE_FS_FILE service_fs_open (SERVICE_FS fs, const char *path, uint32_t flags, uint32_t mode)
 
int32_t service_fs_read (SERVICE_FS fs, SERVICE_FS_FILE file, void *buf, uint32_t len)
 
int32_t service_fs_write (SERVICE_FS fs, SERVICE_FS_FILE file, void *buf, uint32_t len)
 
int32_t service_fs_lseek (SERVICE_FS fs, SERVICE_FS_FILE file, int32_t offs, uint32_t whence)
 
int32_t service_fs_remove (SERVICE_FS fs, const char *path)
 
int32_t service_fs_fremove (SERVICE_FS fs, SERVICE_FS_FILE file)
 
int32_t service_fs_stat (SERVICE_FS fs, const char *path, SERVICE_FS_FILE_STAT *stat)
 
int32_t service_fs_fstat (SERVICE_FS fs, SERVICE_FS_FILE file, SERVICE_FS_FILE_STAT *stat)
 
int32_t service_fs_flush (SERVICE_FS fs, SERVICE_FS_FILE file)
 
int32_t service_fs_close (SERVICE_FS fs, SERVICE_FS_FILE file)
 
int32_t service_fs_rename (SERVICE_FS fs, const char *old_name, const char *new_name)
 
int32_t service_fs_opendir (SERVICE_FS fs, const char *name, SERVICE_FS_DIR *d)
 
int32_t service_fs_closedir (SERVICE_FS fs, SERVICE_FS_DIR *d)
 
SERVICE_FS_DIRENTservice_fs_readdir (SERVICE_FS fs, SERVICE_FS_DIR *d, SERVICE_FS_DIRENT *e)
 
int32_t service_fs_feof (SERVICE_FS fs, SERVICE_FS_FILE file)
 
int32_t service_fs_ftell (SERVICE_FS fs, SERVICE_FS_FILE file)
 

Detailed Description

Provide filesystem service layer.

Author
Rakwireless
Version
0.0.0
Date
2021.7

Macro Definition Documentation

◆ SERVICE_FS_PATH_MAX_LEN

#define SERVICE_FS_PATH_MAX_LEN   256

◆ SERVICE_FS_O_APPEND

#define SERVICE_FS_O_APPEND   SPIFFS_APPEND

◆ SERVICE_FS_O_TRUNC

#define SERVICE_FS_O_TRUNC   SPIFFS_TRUNC

◆ SERVICE_FS_O_CREAT

#define SERVICE_FS_O_CREAT   SPIFFS_CREAT

◆ SERVICE_FS_O_RDONLY

#define SERVICE_FS_O_RDONLY   SPIFFS_RDONLY

◆ SERVICE_FS_O_WRONLY

#define SERVICE_FS_O_WRONLY   SPIFFS_WRONLY

◆ SERVICE_FS_O_RDWR

#define SERVICE_FS_O_RDWR   SPIFFS_RDWR

◆ SERVICE_FS_O_DIRECT

#define SERVICE_FS_O_DIRECT   SPIFFS_DIRECT

◆ SERVICE_FS_O_EXCL

#define SERVICE_FS_O_EXCL   SPIFFS_EXCL

◆ SERVICE_FS_OK

#define SERVICE_FS_OK   SPIFFS_OK /* (0) Succeeded */

◆ SERVICE_FS_ERR_NOT_MOUNTED

#define SERVICE_FS_ERR_NOT_MOUNTED   SPIFFS_ERR_NOT_MOUNTED /* -10000 */

◆ SERVICE_FS_ERR_FULL

#define SERVICE_FS_ERR_FULL   SPIFFS_ERR_FULL /* -10001 */

◆ SERVICE_FS_ERR_NOT_FOUND

#define SERVICE_FS_ERR_NOT_FOUND   SPIFFS_ERR_NOT_FOUND /* -10002 */

◆ SERVICE_FS_ERR_END_OF_OBJECT

#define SERVICE_FS_ERR_END_OF_OBJECT   SPIFFS_ERR_END_OF_OBJECT /* -10003 */

◆ SERVICE_FS_ERR_DELETED

#define SERVICE_FS_ERR_DELETED   SPIFFS_ERR_DELETED /* -10004 */

◆ SERVICE_FS_ERR_NOT_FINALIZED

#define SERVICE_FS_ERR_NOT_FINALIZED   SPIFFS_ERR_NOT_FINALIZED /* -10005 */

◆ SERVICE_FS_ERR_NOT_INDEX

#define SERVICE_FS_ERR_NOT_INDEX   SPIFFS_ERR_NOT_INDEX /* -10006 */

◆ SERVICE_FS_ERR_OUT_OF_FILE_DESCS

#define SERVICE_FS_ERR_OUT_OF_FILE_DESCS   SPIFFS_ERR_OUT_OF_FILE_DESCS /* -10007 */

◆ SERVICE_FS_ERR_FILE_CLOSED

#define SERVICE_FS_ERR_FILE_CLOSED   SPIFFS_ERR_FILE_CLOSED /* -10008 */

◆ SERVICE_FS_ERR_FILE_DELETED

#define SERVICE_FS_ERR_FILE_DELETED   SPIFFS_ERR_FILE_DELETED /* -10009 */

◆ SERVICE_FS_ERR_BAD_DESCRIPTOR

#define SERVICE_FS_ERR_BAD_DESCRIPTOR   SPIFFS_ERR_BAD_DESCRIPTOR /* -10010 */

◆ SERVICE_FS_ERR_IS_INDEX

#define SERVICE_FS_ERR_IS_INDEX   SPIFFS_ERR_IS_INDEX /* -10011 */

◆ SERVICE_FS_ERR_IS_FREE

#define SERVICE_FS_ERR_IS_FREE   SPIFFS_ERR_IS_FREE /* -10012 */

◆ SERVICE_FS_ERR_INDEX_SPAN_MISMATCH

#define SERVICE_FS_ERR_INDEX_SPAN_MISMATCH   SPIFFS_ERR_INDEX_SPAN_MISMATCH /* -10013 */

◆ SERVICE_FS_ERR_DATA_SPAN_MISMATCH

#define SERVICE_FS_ERR_DATA_SPAN_MISMATCH   SPIFFS_ERR_DATA_SPAN_MISMATCH /* -10014 */

◆ SERVICE_FS_ERR_INDEX_REF_FREE

#define SERVICE_FS_ERR_INDEX_REF_FREE   SPIFFS_ERR_INDEX_REF_FREE /* -10015 */

◆ SERVICE_FS_ERR_INDEX_REF_LU

#define SERVICE_FS_ERR_INDEX_REF_LU   SPIFFS_ERR_INDEX_REF_LU /* -10016 */

◆ SERVICE_FS_ERR_INDEX_REF_INVALID

#define SERVICE_FS_ERR_INDEX_REF_INVALID   SPIFFS_ERR_INDEX_REF_INVALID /* -10017 */

◆ SERVICE_FS_ERR_INDEX_FREE

#define SERVICE_FS_ERR_INDEX_FREE   SPIFFS_ERR_INDEX_FREE /* -10018 */

◆ SERVICE_FS_ERR_INDEX_LU

#define SERVICE_FS_ERR_INDEX_LU   SPIFFS_ERR_INDEX_LU /* -10019 */

◆ SERVICE_FS_ERR_INDEX_INVALID

#define SERVICE_FS_ERR_INDEX_INVALID   SPIFFS_ERR_INDEX_INVALID /* -10020 */

◆ SERVICE_FS_ERR_NOT_WRITABLE

#define SERVICE_FS_ERR_NOT_WRITABLE   SPIFFS_ERR_NOT_WRITABLE /* -10021 */

◆ SERVICE_FS_ERR_NOT_READABLE

#define SERVICE_FS_ERR_NOT_READABLE   SPIFFS_ERR_NOT_READABLE /* -10022 */

◆ SERVICE_FS_ERR_CONFLICTING_NAME

#define SERVICE_FS_ERR_CONFLICTING_NAME   SPIFFS_ERR_CONFLICTING_NAME /* -10023 */

◆ SERVICE_FS_ERR_NOT_CONFIGURED

#define SERVICE_FS_ERR_NOT_CONFIGURED   SPIFFS_ERR_NOT_CONFIGURED /* -10024 */

◆ SERVICE_FS_ERR_NOT_A_FS

#define SERVICE_FS_ERR_NOT_A_FS   SPIFFS_ERR_NOT_A_FS /* -10025 */

◆ SERVICE_FS_ERR_MOUNTED

#define SERVICE_FS_ERR_MOUNTED   SPIFFS_ERR_MOUNTED /* -10026 */

◆ SERVICE_FS_ERR_ERASE_FAIL

#define SERVICE_FS_ERR_ERASE_FAIL   SPIFFS_ERR_ERASE_FAIL /* -10027 */

◆ SERVICE_FS_ERR_MAGIC_NOT_POSSIBLE

#define SERVICE_FS_ERR_MAGIC_NOT_POSSIBLE   SPIFFS_ERR_MAGIC_NOT_POSSIBLE /* -10028 */

◆ SERVICE_FS_ERR_NO_DELETED_BLOCKS

#define SERVICE_FS_ERR_NO_DELETED_BLOCKS   SPIFFS_ERR_NO_DELETED_BLOCKS /* -10029 */

◆ SERVICE_FS_ERR_FILE_EXISTS

#define SERVICE_FS_ERR_FILE_EXISTS   SPIFFS_ERR_FILE_EXISTS /* -10030 */

◆ SERVICE_FS_ERR_NOT_A_FILE

#define SERVICE_FS_ERR_NOT_A_FILE   SPIFFS_ERR_NOT_A_FILE /* -10031 */

◆ SERVICE_FS_ERR_RO_NOT_IMPL

#define SERVICE_FS_ERR_RO_NOT_IMPL   SPIFFS_ERR_RO_NOT_IMPL /* -10032 */

◆ SERVICE_FS_ERR_RO_ABORTED_OPERATION

#define SERVICE_FS_ERR_RO_ABORTED_OPERATION   SPIFFS_ERR_RO_ABORTED_OPERATION /* -10033 */

◆ SERVICE_FS_ERR_PROBE_TOO_FEW_BLOCKS

#define SERVICE_FS_ERR_PROBE_TOO_FEW_BLOCKS   SPIFFS_ERR_PROBE_TOO_FEW_BLOCKS /* -10034 */

◆ SERVICE_FS_ERR_PROBE_NOT_A_FS

#define SERVICE_FS_ERR_PROBE_NOT_A_FS   SPIFFS_ERR_PROBE_NOT_A_FS /* -10035 */

◆ SERVICE_FS_ERR_NAME_TOO_LONG

#define SERVICE_FS_ERR_NAME_TOO_LONG   SPIFFS_ERR_NAME_TOO_LONG /* -10036 */

◆ SERVICE_FS_ERR_IX_MAP_UNMAPPED

#define SERVICE_FS_ERR_IX_MAP_UNMAPPED   SPIFFS_ERR_IX_MAP_UNMAPPED /* -10037 */

◆ SERVICE_FS_ERR_IX_MAP_MAPPED

#define SERVICE_FS_ERR_IX_MAP_MAPPED   SPIFFS_ERR_IX_MAP_MAPPED /* -10038 */

◆ SERVICE_FS_ERR_IX_MAP_BAD_RANGE

#define SERVICE_FS_ERR_IX_MAP_BAD_RANGE   SPIFFS_ERR_IX_MAP_BAD_RANGE /* -10039 */

◆ SERVICE_FS_ERR_SEEK_BOUNDS

#define SERVICE_FS_ERR_SEEK_BOUNDS   SPIFFS_ERR_SEEK_BOUNDS /* -10040 */

◆ SERVICE_FS_ERR_INTERNAL

#define SERVICE_FS_ERR_INTERNAL   SPIFFS_ERR_INTERNAL /* -10050 */

◆ SERVICE_FS_ERR_TEST

#define SERVICE_FS_ERR_TEST   SPIFFS_ERR_TEST /* -10100 */

◆ SERVICE_FS_ERR_CONTINUE

#define SERVICE_FS_ERR_CONTINUE   (-20000) /* -20000 */

Typedef Documentation

◆ SERVICE_FS_FILE

◆ SERVICE_FS

typedef void* SERVICE_FS

Enumeration Type Documentation

◆ SERVICE_FS_FILE_TYPE

Enumerator
SERVICE_FS_FLASH_TYPE 

Function Documentation

◆ service_fs_ferrno()

int32_t service_fs_ferrno ( SERVICE_FS_FILE  file)

◆ service_fs_derrno()

int32_t service_fs_derrno ( SERVICE_FS_DIR  dir)

◆ service_fs_init()

SERVICE_FS service_fs_init ( void  )

◆ service_fs_reset()

SERVICE_FS service_fs_reset ( void  )

◆ service_fs_list()

int32_t service_fs_list ( SERVICE_FS  fs,
SERVICE_FS_DIR d,
SERVICE_FS_DIRENT entry 
)

◆ service_fs_open()

SERVICE_FS_FILE service_fs_open ( SERVICE_FS  fs,
const char *  path,
uint32_t  flags,
uint32_t  mode 
)

◆ service_fs_read()

int32_t service_fs_read ( SERVICE_FS  fs,
SERVICE_FS_FILE  file,
void *  buf,
uint32_t  len 
)

◆ service_fs_write()

int32_t service_fs_write ( SERVICE_FS  fs,
SERVICE_FS_FILE  file,
void *  buf,
uint32_t  len 
)

◆ service_fs_lseek()

int32_t service_fs_lseek ( SERVICE_FS  fs,
SERVICE_FS_FILE  file,
int32_t  offs,
uint32_t  whence 
)

◆ service_fs_remove()

int32_t service_fs_remove ( SERVICE_FS  fs,
const char *  path 
)

◆ service_fs_fremove()

int32_t service_fs_fremove ( SERVICE_FS  fs,
SERVICE_FS_FILE  file 
)

◆ service_fs_stat()

int32_t service_fs_stat ( SERVICE_FS  fs,
const char *  path,
SERVICE_FS_FILE_STAT stat 
)

◆ service_fs_fstat()

int32_t service_fs_fstat ( SERVICE_FS  fs,
SERVICE_FS_FILE  file,
SERVICE_FS_FILE_STAT stat 
)

◆ service_fs_flush()

int32_t service_fs_flush ( SERVICE_FS  fs,
SERVICE_FS_FILE  file 
)

◆ service_fs_close()

int32_t service_fs_close ( SERVICE_FS  fs,
SERVICE_FS_FILE  file 
)

◆ service_fs_rename()

int32_t service_fs_rename ( SERVICE_FS  fs,
const char *  old_name,
const char *  new_name 
)

◆ service_fs_opendir()

int32_t service_fs_opendir ( SERVICE_FS  fs,
const char *  name,
SERVICE_FS_DIR d 
)

◆ service_fs_closedir()

int32_t service_fs_closedir ( SERVICE_FS  fs,
SERVICE_FS_DIR d 
)

◆ service_fs_readdir()

SERVICE_FS_DIRENT* service_fs_readdir ( SERVICE_FS  fs,
SERVICE_FS_DIR d,
SERVICE_FS_DIRENT e 
)

◆ service_fs_feof()

int32_t service_fs_feof ( SERVICE_FS  fs,
SERVICE_FS_FILE  file 
)

◆ service_fs_ftell()

int32_t service_fs_ftell ( SERVICE_FS  fs,
SERVICE_FS_FILE  file 
)