Files
cleonos/clks/include/clks/fs.h
2026-04-11 19:01:07 +08:00

30 lines
849 B
C

#ifndef CLKS_FS_H
#define CLKS_FS_H
#include <clks/types.h>
enum clks_fs_node_type {
CLKS_FS_NODE_FILE = 1,
CLKS_FS_NODE_DIR = 2,
};
struct clks_fs_node_info {
enum clks_fs_node_type type;
u64 size;
};
void clks_fs_init(void);
clks_bool clks_fs_is_ready(void);
clks_bool clks_fs_stat(const char *path, struct clks_fs_node_info *out_info);
const void *clks_fs_read_all(const char *path, u64 *out_size);
u64 clks_fs_count_children(const char *dir_path);
clks_bool clks_fs_get_child_name(const char *dir_path, u64 index, char *out_name, usize out_name_size);
clks_bool clks_fs_mkdir(const char *path);
clks_bool clks_fs_write_all(const char *path, const void *data, u64 size);
clks_bool clks_fs_append(const char *path, const void *data, u64 size);
clks_bool clks_fs_remove(const char *path);
u64 clks_fs_node_count(void);
#endif