PipeWire
0.2.0
|
A collection of key/value pairs. More...
Public Member Functions | |
struct pw_properties * | pw_properties_new (const char *key,...) |
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 *str) |
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... | |
struct pw_properties * | pw_properties_merge (const struct pw_properties *oldprops, struct pw_properties *newprops) |
Merge properties into one. 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,...) |
Set a property value by format. More... | |
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... | |
Data Fields | |
struct spa_dict | dict |
A collection of key/value pairs.
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.
struct pw_properties * pw_properties_copy | ( | const struct pw_properties * | properties | ) |
Copy a properties object.
properties | properties to copy |
References pw_array_for_each, and pw_properties_new().
Referenced by pw_properties_merge().
void pw_properties_free | ( | struct pw_properties * | properties | ) |
Free a properties object.
properties | the properties to free |
References pw_array_for_each.
Referenced by pw_core::pw_core_destroy(), pw_factory_destroy(), pw_global::pw_global_destroy(), pw_remote_destroy(), and pw_remote_new().
const char * pw_properties_get | ( | const struct pw_properties * | properties, |
const char * | key | ||
) |
Get a property.
properties | a pw_properties |
key | a key |
Get the property in properties with key.
Referenced by pw_core::pw_core_new(), pw_pipewire::pw_fill_remote_properties(), pw_link_new(), pw_port_add(), pw_properties_merge(), pw_remote_new(), and pw_stream_new().
const char * pw_properties_iterate | ( | const struct pw_properties * | properties, |
void ** | state | ||
) |
Iterate property values.
properties | a pw_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.
References pw_array::pw_array_check_index, and pw_array::pw_array_get_unchecked.
Referenced by pw_properties_merge().
struct pw_properties * pw_properties_merge | ( | const struct pw_properties * | oldprops, |
struct pw_properties * | newprops | ||
) |
Merge properties into one.
oldprops | properties to merge into |
newprops | properties to merge |
A new pw_properties is allocated and the properties of oldprops and newprops are copied into it in that order.
References pw_properties_copy(), pw_properties_get(), pw_properties_iterate(), and pw_properties_set().
struct pw_properties * pw_properties_new | ( | const char * | key, |
... | |||
) |
Make a new properties object.
key | a first key |
... | value and more keys NULL terminated |
Referenced by pw_client::pw_client_new(), pw_core::pw_core_new(), pw_factory_register(), pw_link_register(), pw_node_new(), pw_node_register(), pw_port_new(), pw_properties_copy(), pw_remote_new(), and pw_stream_new().
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 |
Referenced by pw_client::pw_client_update_properties().
struct pw_properties * pw_properties_new_string | ( | const char * | str | ) |
Make a new properties object from the given str.
str should be a whitespace separated list of key=value strings.
args | a property description |
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.
Referenced by pw_client::pw_client_update_properties(), pw_core::pw_core_update_properties(), pw_factory_register(), pw_pipewire::pw_fill_remote_properties(), pw_node_update_properties(), pw_port_add(), pw_port_update_properties(), pw_properties_merge(), and pw_stream_new().
int pw_properties_setf | ( | struct pw_properties * | properties, |
const char * | key, | ||
const char * | format, | ||
... | |||
) |
Set a property value by format.
properties | a pw_properties |
key | a key |
format | a value |
... | extra arguments |
Set the property in properties with key to the value in printf style format Any previous value of key will be overwritten.
Referenced by pw_client::pw_client_new(), pw_core::pw_core_new(), pw_factory_register(), pw_pipewire::pw_fill_remote_properties(), pw_link_register(), and pw_port_add().
struct spa_dict pw_properties::dict |
Referenced by pw_core::pw_core_new(), pw_factory_new(), and pw_port_new().