wireplumber/lib/wp
Pauli Virtanen 22ab3c938f lib: spa-device: add wp_spa_device_set_managed_pending()
Allow marking WpSpaDevice object ids "pending", which means Props from
any ObjectConfig events received for the ids are saved, if there is no
associated object set yet.

When wp_spa_device_store_managed_object() is called, any pending Props
are set on the managed object.

This is useful when nodes cannot be immediately created in the
"create-object" signal handler. For example, in cases where the nodes
are created asynchronously, e.g.  by "module-loopback".  In this case,
although the nodes can be later associated with the WpSpaDevice, any
ObjectConfig events received in the meantime are lost, so for example
restoring saved Routes will race against async node creation.  Using
wp_spa_device_set_managed_pending() solves this race condition.
2024-12-15 20:51:55 +02:00
..
private wireplumber.conf: add systemwide, embedded and split-instance profiles 2024-09-03 11:39:10 +03:00
base-dirs.c base-dirs: add missing (nullable) annotation 2024-03-04 07:07:56 +00:00
base-dirs.h base-dirs: wrap flag groups in parenthesis 2024-03-09 16:30:15 +02:00
client.c client: add wp_client_update_properties 2023-10-15 21:27:14 +00:00
client.h client: add wp_client_update_properties 2023-10-15 21:27:14 +00:00
component-loader.c comp-loader: register the component & feature only if it activates successfully 2023-06-20 17:20:01 +03:00
component-loader.h core: introduce the notion of provided features on components 2023-06-20 12:39:29 +03:00
conf.c conf: further improve how top-level objects are handled 2024-06-02 15:47:09 +03:00
conf.h conf: drop all the _get_value() functions and remove the fallback from _get_section() 2024-03-04 07:07:56 +00:00
core.c lib: wp_core_connect_fd: add \since marker 2024-09-05 20:19:33 +03:00
core.h lib: core: allow to connect a core with a given socket 2024-08-26 14:56:03 +00:00
defs.h lib: add struct paddings to be able to maintain ABI compatibility 2021-06-08 17:38:14 +03:00
device.c lib: spa-device: add wp_spa_device_set_managed_pending() 2024-12-15 20:51:55 +02:00
device.h lib: spa-device: add wp_spa_device_set_managed_pending() 2024-12-15 20:51:55 +02:00
error.c docs: fix C API documentation to work nicely with doxygen & sphinx 2021-05-25 14:19:53 +03:00
error.h core: load components internally and refactor main to just activate it 2023-06-23 18:01:26 +03:00
event-dispatcher.c event: add some trace logs to debug sorting hook dependencies 2024-01-08 12:28:21 +02:00
event-dispatcher.h event-dispatcher: refactor to use before/after dependencies on hooks 2023-04-17 07:48:18 -04:00
event-hook.c gi: hide WP_PRIVATE_API functions from gir 2024-05-31 21:00:07 +03:00
event-hook.h event-dispatcher: refactor to use before/after dependencies on hooks 2023-04-17 07:48:18 -04:00
event.c event: add some trace logs to debug sorting hook dependencies 2024-01-08 12:28:21 +02:00
event.h event*.c: add a few more log msgs 2023-08-15 07:14:59 +00:00
factory.c Merge branch '0.4' into next 2023-09-01 19:12:20 +03:00
factory.h wp-factory: enumerate pw_factory objects 2021-10-19 05:46:46 +00:00
global-proxy.c log: implement a log topics system, like pipewire 2023-05-16 20:42:28 +03:00
global-proxy.h lib: add struct paddings to be able to maintain ABI compatibility 2021-06-08 17:38:14 +03:00
iterator.c log: implement a log topics system, like pipewire 2023-05-16 20:42:28 +03:00
iterator.h lib: Use #define instead of 'static const' for constants 2021-06-24 09:24:16 -04:00
json-utils.c json-utils: fix overriding of non-container values when merging 2024-05-03 15:54:37 +03:00
json-utils.h json-utils: add wp_json_utils_merge_containers(), factored out of conf.c 2023-11-14 12:02:31 +02:00
link.c link/node: Fix docs on state_changed_callback 2024-01-22 13:45:15 +01:00
link.h Revert "link: add WP_LINK_FEATURE_ESTABLISHED to track when a link is PAUSED/ACTIVE" 2023-10-24 11:31:45 +03:00
log.c gi: hide WP_PRIVATE_API functions from gir 2024-05-31 21:00:07 +03:00
log.h log: use G_GNUC_DEPRECATED_FOR to deprecate wp_log_checked 2024-05-03 13:46:52 +00:00
meson.build meson: create the lib version like pipewire 2024-04-18 09:35:23 +00:00
metadata.c metadata: remove incorrect transfer annotation 2024-05-31 23:03:12 +02:00
metadata.h metadata: remove wp_metadata_iterator_item_extract() API 2024-02-28 08:15:17 -05:00
module.c Revert "api: module: support loading arguments from file" 2023-10-24 11:55:52 +03:00
module.h Revert "api: module: support loading arguments from file" 2023-10-24 11:55:52 +03:00
node.c node: cast proxy to pw_node* when calling pw_node functions 2024-11-20 10:10:09 +01:00
node.h docs: fix C API documentation to work nicely with doxygen & sphinx 2021-05-25 14:19:53 +03:00
object-interest.c tree-wide: refactor active feature checks to use _test_active_features() 2023-11-08 12:23:00 +02:00
object-interest.h object-interest: make WP_INTEREST_MATCH_ALL part of the enum 2024-03-09 17:26:52 +02:00
object-manager.c gi: hide WP_PRIVATE_API functions from gir 2024-05-31 21:00:07 +03:00
object-manager.h registry: move to a separate file and decouple it from the object manager 2024-03-12 11:55:45 +02:00
object.c lib: object: add functions to test active and supported features 2023-11-08 12:08:30 +02:00
object.h lib: object: add functions to test active and supported features 2023-11-08 12:08:30 +02:00
plugin.c object.h: don't include core.h 2023-06-23 18:01:26 +03:00
plugin.h core: make the object registration functions public 2023-06-20 12:39:29 +03:00
port.c tree-wide: refactor active feature checks to use _test_active_features() 2023-11-08 12:23:00 +02:00
port.h docs: fix C API documentation to work nicely with doxygen & sphinx 2021-05-25 14:19:53 +03:00
properties.c Merge branch 'master' into next 2023-12-23 18:34:00 +02:00
properties.h properties: add json to properties converters 2023-06-20 12:39:29 +03:00
proxy-interfaces.c log: implement a log topics system, like pipewire 2023-05-16 20:42:28 +03:00
proxy-interfaces.h lib: add struct paddings to be able to maintain ABI compatibility 2021-06-08 17:38:14 +03:00
proxy.c tree-wide: refactor active feature checks to use _test_active_features() 2023-11-08 12:23:00 +02:00
proxy.h proxy: make the FEATURES_MINIMAL and FEATURES_ALL constants part of the enum 2024-03-09 17:25:03 +02:00
session-item.c session-item: improve class description 2023-09-26 09:57:50 +03:00
session-item.h object.h: don't include core.h 2023-06-23 18:01:26 +03:00
settings.c lib: settings: find the first loaded instance of WpSettings when metadata_name is NULL 2024-08-29 17:15:50 +03:00
settings.h settings: add API to set, reset, save, delete and iterate settings 2024-02-28 10:20:20 -05:00
si-factory.c core: make the object registration functions public 2023-06-20 12:39:29 +03:00
si-factory.h core: make the object registration functions public 2023-06-20 12:39:29 +03:00
si-interfaces.c log: implement a log topics system, like pipewire 2023-05-16 20:42:28 +03:00
si-interfaces.h lib: remove WpEndpoint and WpSiEndpoint APIs 2023-04-17 07:48:18 -04:00
spa-json.c spa-json: wrap the data instead of the spa_json* in _parser_get_json() 2024-03-04 07:07:56 +00:00
spa-json.h spa-json: add new "undefined" parser constructor 2024-03-04 07:07:56 +00:00
spa-pod.c spa-pod: don't use assertion macro in code that needs to run always 2023-11-08 20:41:34 +02:00
spa-pod.h spa-pod: add missing API sentinel 2022-01-21 13:59:03 +00:00
spa-type.c log: implement a log topics system, like pipewire 2023-05-16 20:42:28 +03:00
spa-type.h docs: Add brief descriptions to all functions 2021-06-02 17:38:34 +00:00
state.c state: add save_after_timeout() method to replace all custom timeout code 2024-01-04 16:38:33 +02:00
state.h state: add save_after_timeout() method to replace all custom timeout code 2024-01-04 16:38:33 +02:00
transition.c transition: ensure single completion and finish 2024-05-18 01:36:39 +02:00
transition.h lib: add struct paddings to be able to maintain ABI compatibility 2021-06-08 17:38:14 +03:00
wp.c base-dirs: tidy up the build-time base dirs and honor the SUBDIR_WIREPLUMBER flag 2024-03-04 07:07:56 +00:00
wp.h base-dirs: add support for finding modules and remove wp_get_module_dir() 2024-03-04 07:07:56 +00:00
wpversion.h.in lib: add a version header 2020-06-02 18:26:40 +03:00