- Mar 31, 2020
-
-
George Kiagiadakis authored
-
George Kiagiadakis authored
To ease the use case where we are only interested in the id and not the proxy object itself
-
George Kiagiadakis authored
-
George Kiagiadakis authored
This feature enables the caching of WpEndpointStream objects inside WpEndpoint, making information about streams readily accessible to the user of an endpoint
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
This allows having constraints on the pw properties and the GObject properties of the proxy, instead of just on the global properties. This is only useful for constraints on impl proxies, since the globals coming from the registry don't have a proxy object associated at the time they are added in the object managers
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
... and use pw_properties_update() underneath
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
This allows the implementation to rollback changes, cancel jobs, etc
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
- Mar 29, 2020
-
-
George Kiagiadakis authored
* introduces API to export session items * introduces small changes in the WpSiEndpoint & WpSiStream interfaces to make it nicer to work with * ports WpImplEndpoint to use PW_TYPE_INTERFACE_Endpoint to export. Depends on: https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/246 (was merged after 0.3.2)
-
George Kiagiadakis authored
-
George Kiagiadakis authored
This allows activating a dummy item for unit testing
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
This is an asynchronous operation class, like GTask, but it is made to execute several operations underneath, using a state machine, instead of just a single operation.
-
- Feb 27, 2020
-
-
Julian Bouzas authored
-
Julian Bouzas authored
-
Julian Bouzas authored
-
- Feb 19, 2020
-
-
George Kiagiadakis authored
-
- Feb 17, 2020
-
-
George Kiagiadakis authored
the global is stored internally and the returned ref is only useful in the WpProxy code, not in the registry_global() event
-
George Kiagiadakis authored
-
George Kiagiadakis authored
it doesn't matter, because we don't use it, but for the sake of readability
-
- Feb 14, 2020
-
-
George Kiagiadakis authored
-
George Kiagiadakis authored
-
George Kiagiadakis authored
some code is expecting things to happen in that order...
-
George Kiagiadakis authored
... in case the global is removed from the registry before the initial augment completes
-
George Kiagiadakis authored
When a new global is created, it is not certain if the registry global event or the proxy bound event will be fired first. In order to make sure we associate all proxies to their WpGlobals correctly, we now wait a core sync before exposing globals to the object managers, so that in case the implementation proxy receives the bound event after the registry creates the WpGlobal, we can make sure to use this proxy instead of constructing a new one through the object managers
-
George Kiagiadakis authored
There are 3 kinds of WpProxy objects: * the ones that are created as a result of binding a global from the registry * the ones that are created as a result of calling into a remote factory (wp_node_new_from_factory, etc...) * the ones that are a local implementation of an object (WpImplNode, etc...) and are exported Previously the object manager was only able to track the first kind. With these changes we can now also have globals associated with WpProxies that were created earlier (and caused the creation of the global). This saves some resources and reduces round-trips (in case client code wants to change properties of an object that is locally implemented, it shouldn't need to do a round-trip through the server)
-