rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
card_tree.h
Go to the documentation of this file.
1
42
43#pragma once
44
45#include <stddef.h>
46
47#ifdef __cplusplus
48extern "C" {
49#endif
50
54#define CARD_ROOT ""
55
59#define CARD_BENCH "BENCH"
60
65#define CARD_AUTO_LOGS "BENCH/LOGS"
66
70#define CARD_USER "USER"
71
76#define CARD_USER_LOGS "USER/LOGS"
77
81#define CARD_ESC_CONF "BENCH/ESC/CONF"
82
86#define CARD_KST_CONF "BENCH/KST/CONF"
87
91#define CARD_HITEC_CONF "BENCH/HITEC/CONF"
92
96#define CARD_FAULT_LOG "BENCH/RCBENCH.LOG"
97
101#define CARD_FAULT_OLD "BENCH/RCBENCH.OLD"
102
106#define CARD_FAULT_TMP "BENCH/RCBENCH.TMP"
107
113#define CARD_DIR_MAX 24
114
125
136typedef card_dir_t (*card_make_fn)(void *ctx, const char *level);
137
150card_dir_t card_make_dirs(const char *dir, card_make_fn make, void *ctx);
151
155#define CARD_FOLDER_NAME_MAX 8
157#define CARD_FOLDER_DEPTH_MAX 2
158
174
193card_folder_t card_folder_check(const char *in, char *out, size_t n);
194
208const char *card_folder_use(const char *text, const char *fallback,
209 char *out, size_t n);
210
211#ifdef __cplusplus
212}
213#endif
card_dir_t card_make_dirs(const char *dir, card_make_fn make, void *ctx)
Make folder dir one level at a time, the shortest first: for "BENCH/KST/CONF", "BENCH",...
Definition card_tree.c:17
const char * card_folder_use(const char *text, const char *fallback, char *out, size_t n)
The folder a log is written to: text in upper case when card_folder_check() takes it,...
Definition card_tree.c:163
card_folder_t card_folder_check(const char *in, char *out, size_t n)
Whether in names a folder the logs can be written to: 1 or 2 folders separated by "/",...
Definition card_tree.c:112
card_dir_t
What making a folder came to.
Definition card_tree.h:118
@ CARD_DIR_FILE
Definition card_tree.h:121
@ CARD_DIR_OK
Definition card_tree.h:119
@ CARD_DIR_FAILED
Definition card_tree.h:123
@ CARD_DIR_DENIED
Definition card_tree.h:122
@ CARD_DIR_ARG
Definition card_tree.h:120
card_dir_t(*) card_make_fn(void *ctx, const char *level)
Make the one folder level, a path from the root, whose parent is there.
Definition card_tree.h:136
card_folder_t
What card_folder_check() says of a log folder.
Definition card_tree.h:162
@ CARD_FOLDER_LONG
Definition card_tree.h:166
@ CARD_FOLDER_BENCH
Definition card_tree.h:171
@ CARD_FOLDER_ARG
Definition card_tree.h:164
@ CARD_FOLDER_EMPTY
Definition card_tree.h:165
@ CARD_FOLDER_CHAR
Definition card_tree.h:168
@ CARD_FOLDER_DEEP
Definition card_tree.h:167
@ CARD_FOLDER_RESERVED
Definition card_tree.h:169