![]() |
SOUND4 x1.CLOUD Library [1.5.6]
|
This allows to provide a customized preset management. More...
Typedefs | |
typedef wchar_t | fs_char |
typedef char *(* | cloudx1_storage_reader) (const fs_char *filename, void *userdata) |
typedef void(* | cloudx1_storage_reader_free) (char *content, void *userdata) |
typedef int(* | cloudx1_storage_writer) (const fs_char *filename, const char *content, void *userdata) |
typedef int(* | cloudx1_storage_exists) (const fs_char *filename, void *userdata) |
typedef fs_char **(* | cloudx1_storage_getall) (void *userdata) |
typedef void(* | cloudx1_storage_getall_free) (fs_char **all, void *userdata) |
typedef int(* | cloudx1_storage_remove) (const fs_char *filename, void *userdata) |
typedef int(* | cloudx1_storage_rename) (const fs_char *from, const fs_char *to, void *userdata) |
Enumerations | |
enum | cloudx1_PresetChange_Kind { change_kind_created = 1 , change_kind_modified , change_kind_deleted } |
Functions | |
void | cloudx1_SetPresetManager (struct cloudx1_CParameters *params, cloudx1_storage_reader reader, cloudx1_storage_reader_free, cloudx1_storage_writer writer, cloudx1_storage_exists exists, cloudx1_storage_getall getall, cloudx1_storage_getall_free getall_free, cloudx1_storage_remove remove, cloudx1_storage_rename rename, int IsReadOnly, void *userdata) |
void | cloudx1_PresetManager_InformChange (struct cloudx1_CInstance *instance, const fs_char *relative_path, enum cloudx1_PresetChange_Kind change_kind) |
This allows to provide a customized storage for presets and settings.
By default, the library store data on disk or in memory (see save_path
parameter in cloudx1_InitProcess2), but you may use these functions to store data.
It can be used for remote storage, database storage, ...
Known files:
.pst are presetsstate.json
is the instance state file, holding settings and unsaved preset changes.auth.json
is the storage for web authentication settings.*
.onair are used for sharing preset on air name between instances (see STATE_ONAIR
in Parameters).STATE_FILENAME
in parameters, see Parameters.File names are in OS native characters ( wchar_t
for Windows, char
in UTF-8 for others)
typedef int(* cloudx1_storage_exists) (const fs_char *filename, void *userdata) |
Function to call to test if a stored file exists.
filename | the name of the file to test. |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 474 of file sound4.x1.cloud.h.
typedef fs_char **(* cloudx1_storage_getall) (void *userdata) |
Function to call to get all stored files' name. Result has to be freed with cloudx1_storage_getall_free callback
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 483 of file sound4.x1.cloud.h.
typedef void(* cloudx1_storage_getall_free) (fs_char **all, void *userdata) |
Function to call to free the result of getall.
all | the returned value from cloudx1_storage_getall |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 491 of file sound4.x1.cloud.h.
typedef char *(* cloudx1_storage_reader) (const fs_char *filename, void *userdata) |
Function to call to read a stored file, returning its content.
filename | the name of the file to read. |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 447 of file sound4.x1.cloud.h.
typedef void(* cloudx1_storage_reader_free) (char *content, void *userdata) |
Function to call to free the result of cloudx1_storage_reader.
content | the returned value from cloudx1_storage_reader |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 455 of file sound4.x1.cloud.h.
typedef int(* cloudx1_storage_remove) (const fs_char *filename, void *userdata) |
Function to call to remove a stored file.
filename | the name of the file to remove. |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 500 of file sound4.x1.cloud.h.
Function to call to rename a stored file.
from | The source file name (must exist) |
to | The destination file name (must not exist) |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 510 of file sound4.x1.cloud.h.
typedef int(* cloudx1_storage_writer) (const fs_char *filename, const char *content, void *userdata) |
Function to call to write a stored file.
filename | the name of the file to write. |
content | the UTF-8 content to write to the file |
userdata | the userdata passed to cloudx1_SetPresetManager |
Definition at line 465 of file sound4.x1.cloud.h.
typedef wchar_t fs_char |
Definition at line 435 of file sound4.x1.cloud.h.
Kind of change on a storage path
Enumerator | |
---|---|
change_kind_created | Path has been created. |
change_kind_modified | Path has been modified. |
change_kind_deleted | Path has been deleted. |
Definition at line 543 of file sound4.x1.cloud.h.
void cloudx1_PresetManager_InformChange | ( | struct cloudx1_CInstance * | instance, |
const fs_char * | relative_path, | ||
enum cloudx1_PresetChange_Kind | change_kind | ||
) |
Inform that a change happened in the storage. This must be used only in conjonction with cloudx1_SetPresetManager
instance | the processing instance |
relative_path | The path which changed, relative to the root storage |
change_kind | What happened to this path |
void cloudx1_SetPresetManager | ( | struct cloudx1_CParameters * | params, |
cloudx1_storage_reader | reader, | ||
cloudx1_storage_reader_free | , | ||
cloudx1_storage_writer | writer, | ||
cloudx1_storage_exists | exists, | ||
cloudx1_storage_getall | getall, | ||
cloudx1_storage_getall_free | getall_free, | ||
cloudx1_storage_remove | remove, | ||
cloudx1_storage_rename | rename, | ||
int | IsReadOnly, | ||
void * | userdata | ||
) |
Setup a custom preset manager. This overrides the save_path in cloudx1_InitProcess2
To dynamically update when storage change, see cloudx1_PresetManager_InformChange
params | The params to set up |
reader | The function to read a file |
writer | The function to write a file |
exists | The function to test for a file presence |
getall | The function to get all files in storage |
getall_free | The function to free the result from getall |
remove | The function to remove a file from storage |
rename | The function to rename a file |
IsReadOnly | Set to 1 if storage is read-only |
userdata | The userdata parameter for callbacks |