PipeWire Client

digraph inheritance { rankdir=LR; GObject -> WpObject; WpObject -> WpProxy; WpProxy -> WpGlobalProxy; WpGlobalProxy -> WpClient; GInterface -> WpPipewireObject; WpPipewireObject -> WpClient; }
struct WpClient

The WpClient class allows accessing the properties and methods of a PipeWire client object (struct pw_client). A WpClient is constructed internally when a new client connects to PipeWire and it is made available through the WpObjectManager API.

void wp_client_send_error(WpClient * self, guint32 id, int res, const gchar * message)

Send an error to the client.

Parameters
  • self: the client
  • id: the global id to report the error on
  • res: an errno style error code
  • message: the error message string

void wp_client_update_permissions(WpClient * self, guint n_perm, ...)

Update client’s permissions on a list of objects.

An object id of -1 can be used to set the default object permissions for this client

Parameters
  • self: the client
  • n_perm: the number of permissions specified in the variable arguments
  • ...: n_perm pairs of guint32 numbers; the first number is the object id and the second is the permissions that this client should have on this object

void wp_client_update_permissions_array(WpClient * self, guint n_perm, const struct pw_permission * permissions)

Update client’s permissions on a list of objects.

An object id of -1 can be used to set the default object permissions for this client

Parameters
  • self: the client
  • n_perm: the number of permissions specified in the permissions array
  • permissions: (array length=n_perm) (element-type pw_permission): an array of permissions per object id

void wp_client_update_properties(WpClient * self, WpProperties * updates)

Updates the properties of self.

This requires W and X permissions on the client.

Parameters
  • self: the client
  • updates: (transfer full): updates to apply to the properties of self; this does not need to include properties that have not changed

WP_TYPE_CLIENT (wp_client_get_type ())

The WpClient GType.