summaryrefslogtreecommitdiff
path: root/body/c_fl_preferences.h
diff options
context:
space:
mode:
authorJedidiah Barber <contact@jedbarber.id.au>2025-01-21 21:04:54 +1300
committerJedidiah Barber <contact@jedbarber.id.au>2025-01-21 21:04:54 +1300
commitb4438b2fbe895694be98e6e8426103deefc51448 (patch)
tree760d86cd7c06420a91dad102cc9546aee73146fc /body/c_fl_preferences.h
parenta4703a65b015140cd4a7a985db66264875ade734 (diff)
Split public API and private implementation files into different directories
Diffstat (limited to 'body/c_fl_preferences.h')
-rw-r--r--body/c_fl_preferences.h86
1 files changed, 86 insertions, 0 deletions
diff --git a/body/c_fl_preferences.h b/body/c_fl_preferences.h
new file mode 100644
index 0000000..9f77dfb
--- /dev/null
+++ b/body/c_fl_preferences.h
@@ -0,0 +1,86 @@
+
+
+// Programmed by Jedidiah Barber
+// Released into the public domain
+
+
+#ifndef FL_PREFERENCES_GUARD
+#define FL_PREFERENCES_GUARD
+
+
+typedef void* PREFS;
+
+
+extern const int root_fl_prefs_system;
+extern const int root_fl_prefs_user;
+
+extern const int const_fl_path_max;
+
+
+extern "C" const char * fl_preferences_new_uuid();
+
+
+extern "C" PREFS new_fl_pref_database_path(char * p, char * v, char * a);
+extern "C" PREFS new_fl_pref_database_scope(int s, char * v, char * a);
+extern "C" void upref_fl_pref_database(PREFS e);
+extern "C" void free_fl_pref_database(PREFS e);
+
+extern "C" PREFS new_fl_pref_group_copy(PREFS e);
+extern "C" PREFS new_fl_pref_group_memory(char * n);
+extern "C" PREFS new_fl_pref_group_name(PREFS e, char * n);
+extern "C" PREFS new_fl_pref_group_index(PREFS e, int i);
+extern "C" void free_fl_pref_group(PREFS e);
+
+
+extern "C" void fl_preferences_flush(PREFS e);
+extern "C" int fl_preferences_getuserdatapath(PREFS e, char * p, int len);
+
+
+extern "C" int fl_preferences_deleteentry(PREFS e, const char * k);
+extern "C" int fl_preferences_deleteallentries(PREFS e);
+extern "C" int fl_preferences_deletegroup(PREFS e, const char * g);
+extern "C" int fl_preferences_deleteallgroups(PREFS e);
+extern "C" int fl_preferences_clear(PREFS e);
+
+
+extern "C" int fl_preferences_entries(PREFS e);
+extern "C" const char * fl_preferences_entry(PREFS e, int i);
+extern "C" int fl_preferences_entryexists(PREFS e, const char * k);
+extern "C" int fl_preferences_size(PREFS e, const char * k);
+
+
+extern "C" int fl_preferences_groups(PREFS e);
+extern "C" const char * fl_preferences_group(PREFS e, int i);
+extern "C" int fl_preferences_groupexists(PREFS e, const char * g);
+
+
+extern "C" const char * fl_preferences_name(PREFS e);
+extern "C" const char * fl_preferences_path(PREFS e);
+
+
+extern "C" int fl_preferences_get_int(PREFS e, const char * k, int& v, int d);
+extern "C" int fl_preferences_get_float(PREFS e, const char * k, float& v, float d);
+extern "C" int fl_preferences_get_double(PREFS e, const char * k, double& v, double d);
+extern "C" int fl_preferences_get_str
+ (PREFS e, const char * k, char *& v, const char * d);
+extern "C" int fl_preferences_get_str_limit
+ (PREFS e, const char * k, char * v, const char * d, int m);
+extern "C" int fl_preferences_get_void
+ (PREFS e, const char * k, void *& v, const void * d, int ds);
+extern "C" int fl_preferences_get_void_limit
+ (PREFS e, const char * k, void * v, const void * d, int ds, int ms);
+extern "C" void free_fl_preferences_void_data(void * v);
+
+
+extern "C" int fl_preferences_set_int(PREFS e, const char * k, int v);
+extern "C" int fl_preferences_set_float(PREFS e, const char * k, float v);
+extern "C" int fl_preferences_set_float_prec(PREFS e, const char * k, float v, int p);
+extern "C" int fl_preferences_set_double(PREFS e, const char * k, double v);
+extern "C" int fl_preferences_set_double_prec(PREFS e, const char * k, double v, int p);
+extern "C" int fl_preferences_set_str(PREFS e, const char * k, const char * v);
+extern "C" int fl_preferences_set_void(PREFS e, const char * k, const void * d, int ds);
+
+
+#endif
+
+