ESP32-P4 OBC Firmware
ESP-IDF firmware for Plant-B CubeSat OBC
 
Loading...
Searching...
No Matches
fs_utils.h
Go to the documentation of this file.
1
24
25#ifndef __FS_UTILS_H__
26#define __FS_UTILS_H__
27
28#include "esp_log.h"
29#include "esp_err.h"
30#include <stdlib.h>
31#include <string.h>
32#include <sys/stat.h>
33#include <stdbool.h>
34#include <dirent.h>
35
43
44#ifdef __cplusplus
45extern "C" {
46#endif
47
52typedef FILE file_t;
53
66
79
88bool path_exists(const char* path);
89
98bool dir_exists(const char* path);
99
108bool file_exists(const char *path);
109
119f_result_t dir_list(const char *path);
120
135 file_t **const file,
136 const char *path,
137 f_mode_t mode
138);
139
150
161f_result_t file_remove(const char *path);
162
176 file_t *const file,
177 const char *const restrict str
178);
179
193 file_t *const file,
194 const void *const restrict data,
195 size_t sz,
196 size_t n
197);
198
216 file_t *const file,
217 char *const restrict buf,
218 size_t n
219);
220
235 file_t *const file,
236 void *const restrict buf,
237 size_t sz,
238 size_t n
239);
240
241#ifdef __cplusplus
242}
243#endif
244 // end of fs_utils group
246
247#endif // __FS_UTILS_H__
248
f_result_t
File system operation result codes.
Definition fs_utils.h:58
f_result_t file_readline(file_t *const file, char *const restrict buf, size_t n)
Read a newline-terminated string from an open file.
Definition fs_utils.c:167
f_result_t file_remove(const char *path)
Remove a file from the file system.
Definition fs_utils.c:135
f_result_t file_open(file_t **const file, const char *path, f_mode_t mode)
Open a file with the specified mode and initilize a file descriptor.
Definition fs_utils.c:81
f_result_t file_read(file_t *const file, void *const restrict buf, size_t sz, size_t n)
Read raw data from an open file.
Definition fs_utils.c:216
f_mode_t
File access and operation modes.
Definition fs_utils.h:71
bool dir_exists(const char *path)
Check whether a directory exists.
Definition fs_utils.c:35
f_result_t file_writeline(file_t *const file, const char *const restrict str)
Write a null-terminated string to an open file.
Definition fs_utils.c:151
bool path_exists(const char *path)
Check whether a path exists.
Definition fs_utils.c:29
FILE file_t
File handle type.
Definition fs_utils.h:52
f_result_t dir_list(const char *path)
List contents of a directory.
Definition fs_utils.c:49
bool file_exists(const char *path)
Check whether a file exists.
Definition fs_utils.c:42
f_result_t file_close(file_t **file)
Close an open file from its descriptor.
Definition fs_utils.c:121
f_result_t file_write(file_t *const file, const void *const restrict data, size_t sz, size_t n)
Write raw data to an open file.
Definition fs_utils.c:193
@ FR_INVALID_PARAM
Invalid parameter.
Definition fs_utils.h:64
@ FR_OK
Operation successful.
Definition fs_utils.h:59
@ FR_BUFFER_TOO_SMALL
Provided buffer too small.
Definition fs_utils.h:63
@ FR_NO_FILE
File or directory not found.
Definition fs_utils.h:62
@ FR_DISK_ERR
I/O or disk error.
Definition fs_utils.h:61
@ FR_EOF
End of file reached.
Definition fs_utils.h:60
@ BWRITE_OVERWRITE
Open binary file for overwrite.
Definition fs_utils.h:75
@ WRITE_OVERWRITE
Open text file for overwrite.
Definition fs_utils.h:72
@ WRITE_APPEND
Open text file for append.
Definition fs_utils.h:73
@ BREAD
Open binary file for reading.
Definition fs_utils.h:77
@ BWRITE_APPEND
Open binary file for append.
Definition fs_utils.h:76
@ READ
Open text file for reading.
Definition fs_utils.h:74