OSSIA
Open Scenario System for Interactive Application
|
Go to the source code of this file.
Enumerations | |
enum | ossia_type { FLOAT_T , INT_T , VEC2F_T , VEC3F_T , VEC4F_T , IMPULSE_T , BOOL_T , STRING_T , LIST_T , CHAR_T } |
enum | ossia_access_mode { BI , GET , SET } |
enum | ossia_bounding_mode { FREE , CLIP , WRAP , FOLD , LOW , HIGH } |
enum | log_level { trace , debug , info , warn , error , critical , off } |
Functions | |
OSSIA_EXPORT ossia_protocol_t | ossia_protocol_multiplex_create () |
Instantiate a multiplexer protocol. More... | |
OSSIA_EXPORT void | ossia_protocol_multiplex_expose_to (ossia_protocol_t local, ossia_protocol_t other) |
Adds a protocol to the set of protocols managed by the multiplexer. More... | |
OSSIA_EXPORT ossia_protocol_t | ossia_protocol_osc_create (const char *ip, int remote_port, int local_port) |
Instantiate a raw OSC protocol. More... | |
OSSIA_EXPORT ossia_protocol_t | ossia_protocol_minuit_create (const char *local_name, const char *ip, int remote_port, int local_port) |
Instantiate a Minuit protocol. More... | |
OSSIA_EXPORT ossia_protocol_t | ossia_protocol_oscquery_server_create (int osc_port, int ws_port) |
Instantiate an OSCQuery server. More... | |
OSSIA_EXPORT ossia_protocol_t | ossia_protocol_oscquery_mirror_create (const char *host) |
Instantiate an OSCQuery client. More... | |
OSSIA_EXPORT void | ossia_protocol_free (ossia_protocol_t) |
Free the memory associated to a protocol. More... | |
OSSIA_EXPORT ossia_device_t | ossia_device_create (ossia_protocol_t protocol, const char *name) |
Create a device. More... | |
OSSIA_EXPORT void | ossia_device_free (ossia_device_t device) |
Free a device instance. More... | |
OSSIA_EXPORT void | ossia_device_reset_static () |
Free the global device table. More... | |
OSSIA_EXPORT int | ossia_device_update_namespace (ossia_device_t device) |
Request the nodes of a server if the protocol handles it. More... | |
OSSIA_EXPORT ossia_node_t | ossia_device_get_root_node (ossia_device_t device) |
Get the root node of a device. More... | |
OSSIA_EXPORT const char * | ossia_device_get_name (ossia_device_t device) |
Get the name of a device. More... | |
OSSIA_EXPORT ossia_node_callback_idx_t | ossia_device_add_node_created_callback (ossia_device_t device, ossia_node_callback_t callback, void *ctx) |
Add a callback called when a node is created in a device. More... | |
OSSIA_EXPORT void | ossia_device_remove_node_created_callback (ossia_device_t device, ossia_node_callback_idx_t index) |
Remove a callback added with ossia_device_add_node_created_callback. More... | |
OSSIA_EXPORT ossia_node_callback_idx_t | ossia_device_add_node_removing_callback (ossia_device_t device, ossia_node_callback_t callback, void *ctx) |
Add a callback called when a node is removed in a device. More... | |
OSSIA_EXPORT void | ossia_device_remove_node_removing_callback (ossia_device_t device, ossia_node_callback_idx_t index) |
Remove a callback added with ossia_device_add_node_removing_callback. More... | |
OSSIA_EXPORT ossia_parameter_callback_idx_t | ossia_device_add_parameter_deleting_callback (ossia_device_t device, ossia_parameter_callback_t callback, void *ctx) |
Add a callback called when a parameter is removed in a device. More... | |
OSSIA_EXPORT void | ossia_device_remove_parameter_deleting_callback (ossia_device_t device, ossia_parameter_callback_idx_t index) |
Remove a callback added with ossia_device_add_parameter_deleting_callback. More... | |
OSSIA_EXPORT ossia_node_t | ossia_parameter_get_node (ossia_parameter_t param) |
Return the node a parameter is part of. More... | |
OSSIA_EXPORT void | ossia_parameter_set_access_mode (ossia_parameter_t param, ossia_access_mode am) |
OSSIA_EXPORT ossia_access_mode | ossia_parameter_get_access_mode (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_bounding_mode (ossia_parameter_t param, ossia_bounding_mode bm) |
OSSIA_EXPORT ossia_bounding_mode | ossia_parameter_get_bounding_mode (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_domain (ossia_parameter_t param, ossia_domain_t domain) |
OSSIA_EXPORT ossia_domain_t | ossia_parameter_get_domain (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_unit (ossia_parameter_t param, const char *unit) |
OSSIA_EXPORT const char * | ossia_parameter_get_unit (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_muted (ossia_parameter_t param, int muted) |
OSSIA_EXPORT int | ossia_parameter_get_muted (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_disabled (ossia_parameter_t param, int disabled) |
OSSIA_EXPORT int | ossia_parameter_get_disabled (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_critical (ossia_parameter_t param, int critical) |
OSSIA_EXPORT int | ossia_parameter_get_critical (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_repetition_filter (ossia_parameter_t param, int repetition_filter) |
OSSIA_EXPORT int | ossia_parameter_get_repetition_filter (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_set_value (ossia_parameter_t param, ossia_value_t value) |
OSSIA_EXPORT ossia_value_t | ossia_parameter_get_value (ossia_parameter_t param) |
OSSIA_EXPORT int | ossia_parameter_to_int (ossia_parameter_t val) |
Get the value if it is an int. More... | |
OSSIA_EXPORT float | ossia_parameter_to_float (ossia_parameter_t val) |
Get the value if it is an float. More... | |
OSSIA_EXPORT struct ossia_vec2f | ossia_parameter_to_2f (ossia_parameter_t val) |
Get the value if it is a vec2f. More... | |
OSSIA_EXPORT struct ossia_vec3f | ossia_parameter_to_3f (ossia_parameter_t val) |
Get the value if it is a vec3f. More... | |
OSSIA_EXPORT struct ossia_vec4f | ossia_parameter_to_4f (ossia_parameter_t val) |
Get the value if it is a vec4f. More... | |
OSSIA_EXPORT int | ossia_parameter_to_bool (ossia_parameter_t val) |
Get the value if it is a bool. More... | |
OSSIA_EXPORT void | ossia_parameter_to_byte_array (ossia_parameter_t val, char **str, size_t *sz) |
Get the value if it is a byte array. More... | |
OSSIA_EXPORT const char * | ossia_parameter_to_string (ossia_parameter_t val) |
Get the value if it is a null-terminated string. More... | |
OSSIA_EXPORT void | ossia_parameter_to_list (ossia_parameter_t val_in, ossia_value_t **out, size_t *size) |
Get the value if it is a list. More... | |
OSSIA_EXPORT void | ossia_parameter_to_fn (ossia_parameter_t val_in, float **out, size_t *size) |
Get the value if it is a list of floats. More... | |
OSSIA_EXPORT void | ossia_parameter_to_in (ossia_parameter_t val_in, int **out, size_t *size) |
Get the value if it is a list of ints. More... | |
OSSIA_EXPORT void | ossia_parameter_push_value (ossia_parameter_t param, ossia_value_t value) |
OSSIA_EXPORT void | ossia_parameter_push_impulse (ossia_parameter_t param) |
OSSIA_EXPORT void | ossia_parameter_push_i (ossia_parameter_t param, int value) |
OSSIA_EXPORT void | ossia_parameter_push_b (ossia_parameter_t param, int b) |
OSSIA_EXPORT void | ossia_parameter_push_f (ossia_parameter_t param, float value) |
OSSIA_EXPORT void | ossia_parameter_push_2f (ossia_parameter_t param, float v1, float v2) |
OSSIA_EXPORT void | ossia_parameter_push_3f (ossia_parameter_t param, float v1, float v2, float v3) |
OSSIA_EXPORT void | ossia_parameter_push_4f (ossia_parameter_t param, float v1, float v2, float v3, float v4) |
OSSIA_EXPORT void | ossia_parameter_push_c (ossia_parameter_t param, char value) |
OSSIA_EXPORT void | ossia_parameter_push_s (ossia_parameter_t param, const char *value) |
OSSIA_EXPORT void | ossia_parameter_push_in (ossia_parameter_t param, const int *value, size_t sz) |
Push an array of integers. More... | |
OSSIA_EXPORT void | ossia_parameter_push_fn (ossia_parameter_t param, const float *value, size_t sz) |
Push an array of floats. More... | |
OSSIA_EXPORT void | ossia_parameter_push_cn (ossia_parameter_t param, const char *value, size_t sz) |
Push a string with known length. More... | |
OSSIA_EXPORT void | ossia_parameter_push_list (ossia_parameter_t param, const ossia_value_t *value, size_t sz) |
Push an array of values. More... | |
OSSIA_EXPORT ossia_value_t | ossia_parameter_fetch_value (ossia_parameter_t param) |
Fetch the value of a parameter. More... | |
OSSIA_EXPORT void | ossia_parameter_set_listening (ossia_parameter_t param, int listening) |
Enable or disable remote updates for a given address. More... | |
OSSIA_EXPORT ossia_value_callback_idx_t | ossia_parameter_add_callback (ossia_parameter_t param, ossia_value_callback_t callback, void *ctx) |
Add a callback called when the value of a parameter changes. More... | |
OSSIA_EXPORT void | ossia_parameter_push_callback (ossia_parameter_t param, ossia_value_callback_t callback, void *ctx) |
Add a callback called when the value of a parameter changes. More... | |
OSSIA_EXPORT void | ossia_parameter_remove_callback (ossia_parameter_t param, ossia_value_callback_idx_t index) |
Remove a callback added with ossia_parameter_add_callback. More... | |
OSSIA_EXPORT void | ossia_parameter_free_callback_idx (ossia_value_callback_idx_t) |
Free a callback index. More... | |
OSSIA_EXPORT ossia_node_t | ossia_node_find (ossia_node_t root, const char *path) |
Find a child node. More... | |
OSSIA_EXPORT void | ossia_node_find_pattern (ossia_node_t root, const char *pattern, ossia_node_t **data, size_t *size) |
Find nodes matching a wildcard pattern. More... | |
OSSIA_EXPORT ossia_node_t | ossia_node_create (ossia_node_t root, const char *path) |
Create a child node. More... | |
OSSIA_EXPORT void | ossia_node_create_pattern (ossia_node_t root, const char *pattern, ossia_node_t **data, size_t *size) |
Create nodes matching a brace expansion pattern. More... | |
OSSIA_EXPORT void | ossia_node_array_free (ossia_node_t *) |
Free an array of nodes allocated with ossia_node_find_pattern or ossia_node_create_pattern. More... | |
OSSIA_EXPORT ossia_node_t | ossia_node_add_child (ossia_node_t node, const char *name) |
Create a direct child node. More... | |
OSSIA_EXPORT void | ossia_node_remove_child (ossia_node_t node, ossia_node_t name) |
Removes a direct child node. More... | |
OSSIA_EXPORT const char * | ossia_node_get_name (ossia_node_t node) |
Get the name of a node. More... | |
OSSIA_EXPORT ossia_device_t | ossia_node_get_device (ossia_node_t node) |
Get the root device of a node. More... | |
OSSIA_EXPORT int | ossia_node_child_size (ossia_node_t node) |
Get the number of children of a node. More... | |
OSSIA_EXPORT ossia_node_t | ossia_node_get_child (ossia_node_t node, int child_n) |
Get a specific direct child of a node. More... | |
OSSIA_EXPORT ossia_node_t | ossia_node_find_child (ossia_node_t node, const char *name) |
Find a direct child of a node by name. More... | |
OSSIA_EXPORT ossia_parameter_t | ossia_node_create_parameter (ossia_node_t node, ossia_type type) |
Create a parameter in a node. More... | |
OSSIA_EXPORT ossia_parameter_t | ossia_create_parameter (ossia_node_t node, const char *name, const char *type) |
Create a child parameter. More... | |
OSSIA_EXPORT ossia_parameter_t | ossia_node_get_parameter (ossia_node_t node) |
Get the address contained in a node if any. More... | |
OSSIA_EXPORT void | ossia_node_remove_parameter (ossia_node_t node) |
Remove the address contained in a node if any. More... | |
OSSIA_EXPORT ossia_node_callback_idx_t | ossia_node_add_deleting_callback (ossia_node_t node, ossia_node_callback_t callback, void *ctx) |
Add a callback called when a node is about to be removed. More... | |
OSSIA_EXPORT void | ossia_node_remove_deleting_callback (ossia_node_t node, ossia_node_callback_idx_t index) |
Remove a callback added with ossia_node_add_deleting_callback. More... | |
OSSIA_EXPORT void | ossia_node_set_description (ossia_node_t node, const char *description) |
OSSIA_EXPORT const char * | ossia_node_get_description (ossia_node_t node) |
OSSIA_EXPORT void | ossia_node_set_extended_type (ossia_node_t node, const char *extended_type) |
OSSIA_EXPORT const char * | ossia_node_get_extended_type (ossia_node_t node) |
OSSIA_EXPORT void | ossia_node_set_tags (ossia_node_t node, const char **tags, size_t sz) |
OSSIA_EXPORT void | ossia_node_get_tags (ossia_node_t node, char ***tags, size_t *sz) |
OSSIA_EXPORT void | ossia_tags_free (char **tags, size_t sz) |
Free tags allocated with ossia_node_get_tags. | |
OSSIA_EXPORT void | ossia_node_set_hidden (ossia_node_t node, int hidden) |
OSSIA_EXPORT int | ossia_node_get_hidden (ossia_node_t node) |
OSSIA_EXPORT void | ossia_node_set_refresh_rate (ossia_node_t node, int refresh_rate) |
OSSIA_EXPORT void | ossia_node_unset_refresh_rate (ossia_node_t node) |
OSSIA_EXPORT int | ossia_node_get_refresh_rate (ossia_node_t node, int *ok) |
OSSIA_EXPORT void | ossia_node_set_priority (ossia_node_t node, float priority) |
OSSIA_EXPORT void | ossia_node_unset_priority (ossia_node_t node) |
OSSIA_EXPORT float | ossia_node_get_priority (ossia_node_t node, int *ok) |
OSSIA_EXPORT void | ossia_node_set_value_step_size (ossia_node_t node, double value_step_size) |
OSSIA_EXPORT void | ossia_node_unset_value_step_size (ossia_node_t node) |
OSSIA_EXPORT double | ossia_node_get_value_step_size (ossia_node_t node, int *ok) |
OSSIA_EXPORT void | ossia_node_set_instance_bounds (ossia_node_t node, int min, int max) |
OSSIA_EXPORT void | ossia_node_unset_instance_bounds (ossia_node_t node) |
OSSIA_EXPORT void | ossia_node_get_instance_bounds (ossia_node_t node, int *min, int *max, int *ok) |
OSSIA_EXPORT void | ossia_node_set_default_value (ossia_node_t node, ossia_value_t default_value) |
OSSIA_EXPORT ossia_value_t | ossia_node_get_default_value (ossia_node_t node) |
OSSIA_EXPORT ossia_domain_t | ossia_domain_create (void) |
ossia_domain_create Create a domain More... | |
OSSIA_EXPORT ossia_domain_t | ossia_domain_make_min_max (ossia_value_t min, ossia_value_t max) |
Create a domain from two values. More... | |
OSSIA_EXPORT ossia_value_t | ossia_domain_get_min (ossia_domain_t domain) |
Get the min of a domain. More... | |
OSSIA_EXPORT void | ossia_domain_set_min (ossia_domain_t domain, ossia_value_t value) |
Set the min of a domain. More... | |
OSSIA_EXPORT ossia_value_t | ossia_domain_get_max (ossia_domain_t domain) |
Get the max of a domain. More... | |
OSSIA_EXPORT void | ossia_domain_set_max (ossia_domain_t domain, ossia_value_t value) |
Set the max of a domain. More... | |
OSSIA_EXPORT ossia_domain_t | ossia_domain_make_string_set (const char **strings, size_t n) |
Create a domain from a set of strings. More... | |
OSSIA_EXPORT ossia_domain_t | ossia_domain_make_int_set (const int *values, size_t n) |
Create a domain from a set of ints. More... | |
OSSIA_EXPORT ossia_domain_t | ossia_domain_make_float_set (const float *values, size_t n) |
Create a domain from a set of floats. More... | |
OSSIA_EXPORT ossia_domain_t | ossia_domain_make_value_set (const ossia_value_t *values, size_t n) |
Create a domain from a set of values. More... | |
OSSIA_EXPORT void | ossia_domain_get_values (ossia_domain_t domain, ossia_value_t **values, size_t *n) |
Get the values of a domain. More... | |
OSSIA_EXPORT void | ossia_domain_set_values (ossia_domain_t domain, const ossia_value_t *values, size_t n) |
Set the values of a domain. More... | |
OSSIA_EXPORT void | ossia_domain_free (ossia_domain_t domain) |
Free a domain. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_impulse () |
Create a value of type Impulse. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_int (int value) |
Create a value of type int. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_float (float value) |
Create a value of type float. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_2f (float v1, float v2) |
Create a value of type vec2f. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_3f (float v1, float v2, float v3) |
Create a value of type vec3f. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_4f (float v1, float v2, float v3, float v4) |
Create a value of type vec4f. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_bool (int value) |
Create a value of type bool. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_char (char value) |
Create a value of type char. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_string (const char *value) |
Create a value of type string. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_byte_array (const char *value, size_t size) |
Create a value of type string. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_list (const ossia_value_t *values, size_t size) |
Create a value of type list. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_in (const int *values, size_t size) |
Create a value of type list with only ints. More... | |
OSSIA_EXPORT ossia_value_t | ossia_value_create_fn (const float *values, size_t size) |
Create a value of type list with only floats. More... | |
OSSIA_EXPORT void | ossia_value_free (ossia_value_t value) |
Free the value. More... | |
OSSIA_EXPORT ossia_type | ossia_value_get_type (ossia_value_t type) |
Get the type of a value. More... | |
OSSIA_EXPORT int | ossia_value_to_int (ossia_value_t val) |
Get the value if it is an int. More... | |
OSSIA_EXPORT float | ossia_value_to_float (ossia_value_t val) |
Get the value if it is an float. More... | |
OSSIA_EXPORT struct ossia_vec2f | ossia_value_to_2f (ossia_value_t val) |
Get the value if it is a vec2f. More... | |
OSSIA_EXPORT struct ossia_vec3f | ossia_value_to_3f (ossia_value_t val) |
Get the value if it is a vec3f. More... | |
OSSIA_EXPORT struct ossia_vec4f | ossia_value_to_4f (ossia_value_t val) |
Get the value if it is a vec4f. More... | |
OSSIA_EXPORT int | ossia_value_to_bool (ossia_value_t val) |
Get the value if it is an bool. More... | |
OSSIA_EXPORT void | ossia_value_to_byte_array (ossia_value_t val, char **str, size_t *sz) |
Get the value if it is a byte array. More... | |
OSSIA_EXPORT const char * | ossia_value_to_string (ossia_value_t val) |
Get the value if it is a null-terminated string. More... | |
OSSIA_EXPORT void | ossia_value_to_list (ossia_value_t val_in, ossia_value_t **out, size_t *size) |
Get the value if it is a list. More... | |
OSSIA_EXPORT void | ossia_value_free_list (ossia_value_t *out) |
Free an array of values. | |
OSSIA_EXPORT void | ossia_value_to_fn (ossia_value_t val_in, float **out, size_t *size) |
Get the value if it is a list of floats. More... | |
OSSIA_EXPORT void | ossia_value_free_fn (float *out) |
Free an array of float. | |
OSSIA_EXPORT void | ossia_value_to_in (ossia_value_t val_in, int **out, size_t *size) |
Get the value if it is a list of ints. More... | |
OSSIA_EXPORT void | ossia_value_free_in (int *out) |
Free an array of int. | |
OSSIA_EXPORT int | ossia_value_convert_int (ossia_value_t val) |
Get the value as an int. More... | |
OSSIA_EXPORT float | ossia_value_convert_float (ossia_value_t val) |
Get the value as a float. More... | |
OSSIA_EXPORT int | ossia_value_convert_bool (ossia_value_t val) |
Get the value as a bool. More... | |
OSSIA_EXPORT char | ossia_value_convert_char (ossia_value_t val) |
Get the value as a char. More... | |
OSSIA_EXPORT void | ossia_value_convert_byte_array (ossia_value_t val, char **str, size_t *sz) |
Get the value as a byte array. More... | |
OSSIA_EXPORT void | ossia_value_convert_list (ossia_value_t val_in, ossia_value_t **out, size_t *size) |
Get the value as a list. More... | |
OSSIA_EXPORT struct ossia_vec2f | ossia_value_convert_2f (ossia_value_t val) |
Get the value as a vec2f. More... | |
OSSIA_EXPORT struct ossia_vec3f | ossia_value_convert_3f (ossia_value_t val) |
Get the value as a vec3f. More... | |
OSSIA_EXPORT struct ossia_vec4f | ossia_value_convert_4f (ossia_value_t val) |
Get the value as a vec4f. More... | |
OSSIA_EXPORT void | ossia_string_free (char *) |
OSSIA_EXPORT ossia_logger_t | ossia_logger_create (const char *host, const char *app) |
Create a logger instance. More... | |
OSSIA_EXPORT void | ossia_logger_init_heartbeat (ossia_logger_t log, int pid, const char *cmdline) |
Start sending logger heartbeats. More... | |
OSSIA_EXPORT void | ossia_logger_set_level (ossia_logger_t log, enum log_level lvl) |
Change the current log level. More... | |
OSSIA_EXPORT void | ossia_log (ossia_logger_t log, enum log_level lvl, const char *message) |
Log a message. More... | |
OSSIA_EXPORT void | ossia_logger_free (ossia_logger_t log) |
Free a logger instance. More... | |
OSSIA_EXPORT ossia_mq_t | ossia_mq_create (ossia_device_t) |
Create a message queue for a given device. More... | |
OSSIA_EXPORT void | ossia_mq_register (ossia_mq_t, ossia_parameter_t) |
Register a parameter into a message queue. | |
OSSIA_EXPORT void | ossia_mq_unregister (ossia_mq_t, ossia_parameter_t) |
Unregister a parameter from a message queue. | |
OSSIA_EXPORT int | ossia_mq_pop (ossia_mq_t mq, ossia_parameter_t *param, ossia_value_t *val) |
Get the head of the message queue if any. More... | |
OSSIA_EXPORT void | ossia_mq_free (ossia_mq_t) |
Remove a message queue. | |
OSSIA_EXPORT ossia_network_context_t | ossia_network_context_create () |
Create a new network context. | |
OSSIA_EXPORT void | ossia_network_context_free (ossia_network_context_t) |
Free a network context. | |
OSSIA_EXPORT void | ossia_network_context_poll (ossia_network_context_t) |
Process the network events currently pending. | |