Pauli Virtanen
fdcb02ed75
modules: add Module Name section to the module reference docs
2023-11-20 08:41:13 +00:00
Pauli Virtanen
eca773fc12
modules: strip "PipeWire Module:" from Doxygen page name
...
Make them appear nicer in the output.
2023-11-19 16:39:15 +00:00
Wim Taymans
f318edb699
metadata: add support for initial metadata
...
Add a metadata.values property that is used to fill the metadata store
with initial values.
Fixes #3076
2023-04-14 15:07:26 +02:00
Wim Taymans
6394eb1b18
metadata: return pw_metadata from factory create
...
That is what the factory return value says.
2023-04-14 12:50:07 +02:00
Barnabás Pőcze
934ab3036e
treewide: use SPDX tags to specify copyright information
...
SPDX tags make the licensing information easy to understand and clear,
and they are machine parseable.
See https://spdx.dev for more information.
2023-02-16 10:54:48 +00:00
Wim Taymans
95f8c569a0
module-metadata: handle factory destroy
...
Destroy the module when the factory is destroyed.
2022-05-06 11:33:00 +02:00
Wim Taymans
b97327e1f6
module: handle type register errors
...
Registering an export type can give an error when the type is already
registered. Handle those errors and refuse to load the module.
See #2281
2022-04-11 21:15:13 +02:00
Wim Taymans
1a911a9ccd
resource: allow NULL resource in error
...
And then log en error instead.
We can remove some awkward patterns in modules.
2022-02-02 21:33:33 +01:00
Wim Taymans
d19ab798be
module-metadata: allow create without client
...
Which will create a new impl-metadata object.
2022-01-18 12:42:23 +01:00
Peter Hutterer
14112fd168
modules: use the new topic-based logging from various pipewire modules
2021-09-28 09:35:39 +02:00
Peter Hutterer
f181232a61
doc: add the documentation infrastructure for pipewire modules
...
All empty pages for now but at least this makes them show up in the
documentation.
2021-06-25 08:42:24 +00:00
George Kiagiadakis
59407d2f08
includes: update all references to extensions to point to pipewire/extensions
...
This also brings the advantage that all tools, examples, modules, components
can also be compiled standalone out-of-tree using libpipewire from the system
2021-06-18 17:54:18 +03:00
Wim Taymans
9d9e3f2d23
metadata: add client-id to properties
...
Add the client that owns the metadata to the properties.
2021-06-16 12:17:20 +02:00
Wim Taymans
b118a84a60
module-metadata: set factory id in properties
2021-01-14 19:22:18 +01:00
Wim Taymans
91d4806611
permission: add some helpers
...
Add PW_PERM_ALL as a shortcut for all permissions
Add PW_PERMISSION_FORMAT and PW_PERMISSION_ARGS to nicely format
permissions.
2020-07-30 16:26:29 +02:00
Wim Taymans
65d72bb87c
improve error messages
...
Send create_object error messages to the new resource id so that
the client can better know what proxy is failing.
Use resource_remove when create_object fails because the core will
already send a remove_id on failure.
Try to send other errors to the proxy that made the request if
possible.
2020-02-25 16:38:13 +01:00
Wim Taymans
f391353c7f
Make interface types a string
...
This is more in line with wayland and it allows us to create new
interfaces in modules without having to add anything to the type
enum. It also removes some lookups to map type_id to readable
name in debug.
2019-12-19 13:36:04 +01:00
Wim Taymans
1317ca140c
pass spa_dict around as config
...
Don't pass pw_properties around when we simply need to pass around
config info, only use pw_properties when used to construct an object
that keeps the properties.
2019-12-13 11:26:05 +01:00
Wim Taymans
310077438b
pw_impl_factory_new -> pw_context_create_factory
2019-12-11 17:50:27 +01:00
Wim Taymans
443a49947e
pw_module -> pw_impl_module
2019-12-11 11:57:56 +01:00
Wim Taymans
815d4a8d20
pw_factory -> pw_impl_factory
2019-12-11 11:45:27 +01:00
Wim Taymans
95688939bf
pw_client -> pw_impl_client
2019-12-11 11:21:43 +01:00
Wim Taymans
d70a47b7fe
move proxy implementations in their own file
...
Rearrange headers
2019-12-11 10:58:51 +01:00
Wim Taymans
ecc6b27cd7
rename core_proxy -> core
...
Rename core_proxy to core and move the introspect and interface
contents to core.h
In an effort to promote the proxy API.
2019-12-11 07:46:59 +01:00
Wim Taymans
8ea78c2e3f
pw_core -> pw_context
...
The proxy API is the one that we would like to expose for applications
and the other API is used internally when implementing modules or
factories.
The current pw_core object is really a context for all objects so
name it that way. It also makes it possible to rename pw_core_proxy
to pw_proxy later.
2019-12-10 18:19:56 +01:00
Wim Taymans
7594eabdc8
remote: pass core_proxy to export function
...
We want to remove the need for the pw_remote in most cases.
2019-12-05 11:15:04 +01:00
Wim Taymans
e40fbf8cc4
Add printf checks for proxy_error and resource_error
...
Add an error variant without checks.
2019-11-21 16:09:05 +01:00
Wim Taymans
0a81a982f7
metadata: Add metadata API
...
Metadata allows apps to attach properties to objects that can be
read by other apps.
Not complete yet, properties should be removed when the object is
removed.
2019-11-03 10:31:14 +01:00