new view serialized/deserialized params storage

This commit is contained in:
Ryan Fleury
2024-08-26 15:55:12 -07:00
parent 895c4dd199
commit 567aea2b15
5 changed files with 140 additions and 60 deletions
+7 -1
View File
@@ -242,7 +242,8 @@ struct DF_View
// rjf: params tree state
Arena *params_arenas[2];
MD_Node *params_roots[2];
U64 params_gen;
U64 params_write_gen;
U64 params_read_gen;
// rjf: text query state
TxtPt query_cursor;
@@ -970,6 +971,11 @@ internal void *df_view_get_or_push_user_state(DF_View *view, U64 size);
internal Arena *df_view_push_arena_ext(DF_View *view);
#define df_view_user_state(view, type) (type *)df_view_get_or_push_user_state((view), sizeof(type))
//- rjf: param saving
internal void df_store_param(DF_View *view, String8 key, String8 value);
internal void df_store_paramf(DF_View *view, String8 key, char *fmt, ...);
#define df_store_param_f32(view, key, f32) df_store_paramf((view), (key), "%ff", (f32))
////////////////////////////////
//~ rjf: Expand-Keyed Transient View Functions