xt-sdk 文档
v1.0.3
xt-sdk 嵌入式 SDK API 参考
Toggle main menu visibility
载入中...
搜索中...
未找到
xt_vfs_ramfs.h
浏览该文件的文档.
1
11
12
#ifndef __XT_VFS_RAMFS_H__
13
#define __XT_VFS_RAMFS_H__
14
15
/* ==================== [Includes] ========================================== */
16
17
#include "
xt_vfs.h
"
18
19
/* ==================== [Defines] =========================================== */
20
22
#define RAMFS_MAX_NODES 32
24
#define RAMFS_MAX_CONTENT 4096
26
#define RAMFS_MAX_NAME 64
27
28
/* ==================== [Typedefs] ========================================== */
29
31
typedef
struct
ramfs_node
{
32
struct
xt_list_node
node
;
33
char
name
[
RAMFS_MAX_NAME
];
34
uint8_t
type
;
35
uint8_t
content
[
RAMFS_MAX_CONTENT
];
36
uint32_t
size
;
37
bool
is_used
;
38
}
ramfs_node_t
;
39
41
typedef
struct
ramfs_file
{
42
ramfs_node_t
*
node
;
43
uint32_t
pos
;
44
xt_vfs_mode_t
flags
;
45
}
ramfs_file_t
;
46
48
typedef
struct
ramfs_ctx
{
49
struct
xt_list_node
node_list
;
50
ramfs_node_t
nodes
[
RAMFS_MAX_NODES
];
51
ramfs_file_t
files
[
RAMFS_MAX_NODES
];
52
uint32_t
file_used_mask
;
53
xt_vfs_dirent_t
dirent
;
54
}
ramfs_ctx_t
;
55
56
#ifdef __cplusplus
57
extern
"C"
{
58
#endif
59
60
/* ==================== [Global Prototypes] ================================= */
61
69
const
xt_vfs_ops_t
*
xt_vfs_ramfs_get_ops
(
void
);
70
80
void
*
xt_vfs_ramfs_create
(
void
);
81
89
void
xt_vfs_ramfs_destroy
(
void
*ctx);
90
91
#ifdef __cplusplus
92
}
93
#endif
94
95
#endif
/* __XT_VFS_RAMFS_H__ */
xt_vfs_ops_t
struct xt_vfs_ops xt_vfs_ops_t
后端操作接口(前向声明)
定义
xt_vfs.h:246
xt_vfs_dirent_t
struct xt_vfs_dirent xt_vfs_dirent_t
目录项信息
xt_vfs_mode_t
uint32_t xt_vfs_mode_t
文件模式类型(权限 + 类型)
定义
xt_vfs.h:173
ramfs_ctx
ramfs 上下文(文件系统实例)
定义
xt_vfs_ramfs.h:48
ramfs_ctx::file_used_mask
uint32_t file_used_mask
定义
xt_vfs_ramfs.h:52
ramfs_ctx::nodes
ramfs_node_t nodes[32]
定义
xt_vfs_ramfs.h:50
ramfs_ctx::node_list
struct xt_list_node node_list
定义
xt_vfs_ramfs.h:49
ramfs_ctx::files
ramfs_file_t files[32]
定义
xt_vfs_ramfs.h:51
ramfs_ctx::dirent
xt_vfs_dirent_t dirent
定义
xt_vfs_ramfs.h:53
ramfs_file
打开的文件句柄
定义
xt_vfs_ramfs.h:41
ramfs_file::flags
xt_vfs_mode_t flags
定义
xt_vfs_ramfs.h:44
ramfs_file::pos
uint32_t pos
定义
xt_vfs_ramfs.h:43
ramfs_file::node
ramfs_node_t * node
定义
xt_vfs_ramfs.h:42
ramfs_node
文件系统节点(文件或目录)
定义
xt_vfs_ramfs.h:31
ramfs_node::type
uint8_t type
定义
xt_vfs_ramfs.h:34
ramfs_node::is_used
bool is_used
定义
xt_vfs_ramfs.h:37
ramfs_node::node
struct xt_list_node node
定义
xt_vfs_ramfs.h:32
ramfs_node::size
uint32_t size
定义
xt_vfs_ramfs.h:36
ramfs_node::name
char name[64]
定义
xt_vfs_ramfs.h:33
ramfs_node::content
uint8_t content[4096]
定义
xt_vfs_ramfs.h:35
xt_list_node
定义
xt_list.h:33
xt_vfs.h
xt 虚拟文件系统——支持多后端挂载、两级锁、静态/动态内存切换
RAMFS_MAX_NAME
#define RAMFS_MAX_NAME
节点名称最大长度
定义
xt_vfs_ramfs.h:26
ramfs_node_t
struct ramfs_node ramfs_node_t
文件系统节点(文件或目录)
RAMFS_MAX_NODES
#define RAMFS_MAX_NODES
最大节点数(文件 + 目录)
定义
xt_vfs_ramfs.h:22
ramfs_ctx_t
struct ramfs_ctx ramfs_ctx_t
ramfs 上下文(文件系统实例)
xt_vfs_ramfs_create
void * xt_vfs_ramfs_create(void)
创建并初始化 ramfs 上下文
RAMFS_MAX_CONTENT
#define RAMFS_MAX_CONTENT
每个节点的最大内容字节数
定义
xt_vfs_ramfs.h:24
xt_vfs_ramfs_get_ops
const xt_vfs_ops_t * xt_vfs_ramfs_get_ops(void)
获取 ramfs 操作表(编译期常量,多实例共享)
ramfs_file_t
struct ramfs_file ramfs_file_t
打开的文件句柄
xt_vfs_ramfs_destroy
void xt_vfs_ramfs_destroy(void *ctx)
销毁 ramfs 上下文并释放内存
tests
xt_vfs
xt_vfs_ramfs.h
生成于
, 为 xt-sdk 文档使用
1.17.0