PipeWire
0.3.38
|
Properties are used to pass around arbitrary key/value pairs. More...
Files | |
file | properties.h |
pipewire/properties.h | |
Data Structures | |
struct | pw_properties |
Macros | |
#define | PW_PROPERTIES_FLAG_NL (1<<0) |
Functions | |
struct pw_properties * | pw_properties_new (const char *key,...) 1 |
Make a new properties object. More... | |
struct pw_properties * | pw_properties_new_dict (const struct spa_dict *dict) |
Make a new properties object from the given dictionary. More... | |
struct pw_properties * | pw_properties_new_string (const char *args) |
Make a new properties object from the given str. More... | |
struct pw_properties * | pw_properties_copy (const struct pw_properties *properties) |
Copy a properties object. More... | |
int | pw_properties_update_keys (struct pw_properties *props, const struct spa_dict *dict, const char *const keys[]) |
Copy multiple keys from one property to another. More... | |
int | pw_properties_update_ignore (struct pw_properties *props, const struct spa_dict *dict, const char *const ignore[]) |
int | pw_properties_update (struct pw_properties *props, const struct spa_dict *dict) |
Update properties. More... | |
int | pw_properties_update_string (struct pw_properties *props, const char *str, size_t size) |
Update the properties from the given string, overwriting any existing keys with the new values from str. More... | |
int | pw_properties_add (struct pw_properties *oldprops, const struct spa_dict *dict) |
Add properties. More... | |
int | pw_properties_add_keys (struct pw_properties *oldprops, const struct spa_dict *dict, const char *const keys[]) |
Add keys. More... | |
void | pw_properties_clear (struct pw_properties *properties) |
Clear a properties object. More... | |
void | pw_properties_free (struct pw_properties *properties) |
Free a properties object. More... | |
int | pw_properties_set (struct pw_properties *properties, const char *key, const char *value) |
Set a property value. More... | |
int | pw_properties_setf (struct pw_properties *properties, const char *key, const char *format,...) 1(3 |
int int | pw_properties_setva (struct pw_properties *properties, const char *key, const char *format, va_list args) 1(3 |
int int const char * | pw_properties_get (const struct pw_properties *properties, const char *key) |
Get a property. More... | |
const char * | pw_properties_iterate (const struct pw_properties *properties, void **state) |
Iterate property values. More... | |
int | pw_properties_serialize_dict (FILE *f, const struct spa_dict *dict, uint32_t flags) |
static bool | pw_properties_parse_bool (const char *value) |
static int | pw_properties_parse_int (const char *value) |
static int64_t | pw_properties_parse_int64 (const char *value) |
static uint64_t | pw_properties_parse_uint64 (const char *value) |
static float | pw_properties_parse_float (const char *value) |
static double | pw_properties_parse_double (const char *value) |
Properties are used to pass around arbitrary key/value pairs.
Both keys and values are strings which keeps things simple. Encoding of arbitrary values should be done by using a string serialization such as base64 for binary blobs.
#define PW_PROPERTIES_FLAG_NL (1<<0) |
struct pw_properties* pw_properties_new | ( | const char * | key, |
... | |||
) |
Make a new properties object.
key | a first key |
... | value and more keys NULL terminated |
struct pw_properties* pw_properties_new_dict | ( | const struct spa_dict * | dict | ) |
Make a new properties object from the given dictionary.
dict | a dictionary. keys and values are copied |
struct pw_properties* pw_properties_new_string | ( | const char * | object | ) |
Make a new properties object from the given str.
object should be a whitespace separated list of key=value strings or a json object.
object | a property description |
struct pw_properties* pw_properties_copy | ( | const struct pw_properties * | properties | ) |
Copy a properties object.
properties | properties to copy |
int pw_properties_update_keys | ( | struct pw_properties * | props, |
const struct spa_dict * | dict, | ||
const char *const | keys[] | ||
) |
Copy multiple keys from one property to another.
props | properties to copy to |
dict | properties to copy from |
keys | a NULL terminated list of keys to copy |
int pw_properties_update_ignore | ( | struct pw_properties * | props, |
const struct spa_dict * | dict, | ||
const char *const | ignore[] | ||
) |
int pw_properties_update | ( | struct pw_properties * | props, |
const struct spa_dict * | dict | ||
) |
Update properties.
props | properties to update |
dict | new properties |
The properties in props are updated with dict. Keys in dict with NULL values are removed from props.
int pw_properties_update_string | ( | struct pw_properties * | props, |
const char * | str, | ||
size_t | size | ||
) |
Update the properties from the given string, overwriting any existing keys with the new values from str.
str should be a whitespace separated list of key=value strings or a json object, see pw_properties_new_string().
int pw_properties_add | ( | struct pw_properties * | props, |
const struct spa_dict * | dict | ||
) |
Add properties.
props | properties to add |
dict | new properties |
The properties from dict that are not yet in props are added.
int pw_properties_add_keys | ( | struct pw_properties * | props, |
const struct spa_dict * | dict, | ||
const char *const | keys[] | ||
) |
Add keys.
props | properties to add |
dict | new properties |
keys | a NULL terminated list of keys to add |
The properties with keys from dict that are not yet in props are added.
void pw_properties_clear | ( | struct pw_properties * | properties | ) |
Clear a properties object.
properties | properties to clear |
void pw_properties_free | ( | struct pw_properties * | properties | ) |
Free a properties object.
properties | the properties to free |
int pw_properties_set | ( | struct pw_properties * | properties, |
const char * | key, | ||
const char * | value | ||
) |
Set a property value.
properties | the properties to change |
key | a key |
value | a value or NULL to remove the key |
Set the property in properties with key to value. Any previous value of key will be overwritten. When value is NULL, the key will be removed.
int pw_properties_setf | ( | struct pw_properties * | properties, |
const char * | key, | ||
const char * | format, | ||
... | |||
) |
int int pw_properties_setva | ( | struct pw_properties * | properties, |
const char * | key, | ||
const char * | format, | ||
va_list | args | ||
) |
int int const char* pw_properties_get | ( | const struct pw_properties * | properties, |
const char * | key | ||
) |
Get a property.
properties | a Properties |
key | a key |
Get the property in properties with key.
const char* pw_properties_iterate | ( | const struct pw_properties * | properties, |
void ** | state | ||
) |
Iterate property values.
properties | a Properties |
state | state |
Iterate over properties, returning each key in turn. state should point to a pointer holding NULL to get the first element and will be updated after each iteration. When NULL is returned, all elements have been iterated.
int pw_properties_serialize_dict | ( | FILE * | f, |
const struct spa_dict * | dict, | ||
uint32_t | flags | ||
) |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |