X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/a362b4b2c4abbf2da6ec14cb44a8685a81107f6a..8c06c883e7b13c115d5ff207f79d4b68fccd5ad6:/lunaix-os/includes/lunaix/fs/twifs.h?ds=sidebyside diff --git a/lunaix-os/includes/lunaix/fs/twifs.h b/lunaix-os/includes/lunaix/fs/twifs.h index 2ee5390..50579ae 100644 --- a/lunaix-os/includes/lunaix/fs/twifs.h +++ b/lunaix-os/includes/lunaix/fs/twifs.h @@ -1,6 +1,7 @@ #ifndef __LUNAIX_TWIFS_H #define __LUNAIX_TWIFS_H +#include #include #include #include @@ -34,6 +35,12 @@ struct twifs_node (type) twinode->data; \ }) +#define EXPORT_TWIFS_PLUGIN(label, plg_init) \ + export_ldga_el(twiplugin_inits, label, ptr_t, plg_init) + +void +twifs_register_plugins(); + void twifs_init(); @@ -52,4 +59,11 @@ twifs_rm_node(struct twifs_node* node); struct twimap* twifs_mapping(struct twifs_node* parent, void* data, const char* fmt, ...); +#define twimap_entry_simple(parent, name, data, read_cb) \ + ({ \ + struct twimap* map = twifs_mapping((parent), (data), (name)); \ + map->read = (read_cb); \ + map; \ + }) + #endif /* __LUNAIX_TWIFS_H */