wireplumber/lib/wp
George Kiagiadakis bd65517b7d pw-object-mixin: refactor, implement param caching and features for impl objects
Now the WpPipewireObject interface is directly implemented by the mixin
and there is another interface that users of the mixin must implement
in order for the mixin to work proprely.

A lot of manual stuff that proxy classes had to do before are now
in the mixin. Also most of the data that would normally reside in Private
structures is now in the mixin data structure (stored as qdata on the object).
This is achieving the best amount of code reuse so far.

For impl objects (WpImpl*) there are also default implementations of the
standard pipewire object methods and the INFO & PARAM_* features are
more coherently enabled during the whole lifetime of these objects.
2020-11-25 22:44:29 +02:00
..
private pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
client.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
client.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
configuration.c iterator: make private stuff public, cleanup private.h further 2020-11-15 20:26:15 +02:00
configuration.h lib: add extensive API documentation 2020-02-19 10:43:07 +02:00
core.c iterator: make private stuff public, cleanup private.h further 2020-11-15 20:26:15 +02:00
core.h private: further cleanup of private.h, sort out header includes 2020-11-16 10:35:50 +02:00
debug.c spa-pod: make the wrap functions public, remove private.h and sort out the rest 2020-11-16 11:01:18 +02:00
debug.h debug: don't crash if an object is NULL in wp_*_object() and point it out in the log 2020-05-20 18:27:09 +03:00
defs.h defs: add a new WP_PRIVATE_API function annotation 2020-11-16 10:28:56 +02:00
device.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
device.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
endpoint-link.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
endpoint-link.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
endpoint-stream.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
endpoint-stream.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
endpoint.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
endpoint.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
error.c lib: add extensive API documentation 2020-02-19 10:43:07 +02:00
error.h lib: add extensive API documentation 2020-02-19 10:43:07 +02:00
global-proxy.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
global-proxy.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
iterator.c iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
iterator.h iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
link.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
link.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
meson.build lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
metadata.c iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
metadata.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
module.c iterator: make private stuff public, cleanup private.h further 2020-11-15 20:26:15 +02:00
module.h lib: add extensive API documentation 2020-02-19 10:43:07 +02:00
node.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
node.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
object-interest.c iterator: make private stuff public, cleanup private.h further 2020-11-15 20:26:15 +02:00
object-interest.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
object-manager.c iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
object-manager.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
object.c lib: add new WpObject base class 2020-11-13 19:54:48 +02:00
object.h private: further cleanup of private.h, sort out header includes 2020-11-16 10:35:50 +02:00
plugin.c iterator: make private stuff public, cleanup private.h further 2020-11-15 20:26:15 +02:00
plugin.h plugin: add name property 2020-10-22 08:40:27 -04:00
port.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
port.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
properties.c iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
properties.h properties: add wp_properties_unref_and_take_pw_properties() 2020-06-15 17:22:47 +03:00
props.c props: refactor WpSpaProps into WpProps 2020-05-29 18:47:16 +03:00
props.h spa-pod: make the wrap functions public, remove private.h and sort out the rest 2020-11-16 11:01:18 +02:00
proxy-interfaces.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
proxy-interfaces.h pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
proxy.c lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
proxy.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
session-bin.c iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
session-bin.h private: further cleanup of private.h, sort out header includes 2020-11-16 10:35:50 +02:00
session-item.c session-item: move wp_session_item_set_parent() to the public header 2020-11-16 10:34:58 +02:00
session-item.h session-item: move wp_session_item_set_parent() to the public header 2020-11-16 10:34:58 +02:00
session.c pw-object-mixin: refactor, implement param caching and features for impl objects 2020-11-25 22:44:29 +02:00
session.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
si-factory.c iterator: make private stuff public, cleanup private.h further 2020-11-15 20:26:15 +02:00
si-factory.h lib: implement WpSiFactory, a factory for session items 2020-03-29 15:02:59 +03:00
si-interfaces.c si-interfaces: drop the multi-endpoint interface 2020-05-04 09:35:22 +03:00
si-interfaces.h si-interfaces: drop the multi-endpoint interface 2020-05-04 09:35:22 +03:00
spa-pod.c iterator: add version field in the methods struct 2020-11-16 11:16:35 +02:00
spa-pod.h spa-pod: make the wrap functions public, remove private.h and sort out the rest 2020-11-16 11:01:18 +02:00
spa-type.c spa-type: add the AUDIO_CHANNEL table 2020-04-22 13:44:40 +03:00
spa-type.h spa-type: add the AUDIO_CHANNEL table 2020-04-22 13:44:40 +03:00
transition.c lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
transition.h transition: add the ability to use a GClosure instead of a GAsyncReadyCallback 2020-05-08 19:23:23 +03:00
wp.c Implement PW_TYPE_INTERFACE_Metadata 2020-07-30 21:30:14 +05:30
wp.h lib: refactor WpProxy 2020-11-13 19:54:48 +02:00
wpversion.h.in lib: add a version header 2020-06-02 18:26:40 +03:00