PipeWire  0.3.15
pw_impl_client Class Reference

PipeWire client object class. More...

Public Member Functions

SPA_EXPORT struct pw_impl_clientpw_context_create_client (struct pw_impl_core *core, struct pw_protocol *protocol, struct pw_properties *properties, size_t user_data_size)
 Make a new client object. More...
 
SPA_EXPORT void pw_impl_client_destroy (struct pw_impl_client *client)
 Destroy a client object. More...
 
SPA_EXPORT int pw_impl_client_update_properties (struct pw_impl_client *client, const struct spa_dict *dict)
 Update client properties. More...
 

Detailed Description

PipeWire client object class.

The client object represents a client connection with the PipeWire server.

Each client has its own list of resources it is bound to along with a mapping between the client types and server types.

Member Function Documentation

◆ pw_context_create_client()

SPA_EXPORT struct pw_impl_client * pw_context_create_client ( struct pw_impl_core core,
struct pw_protocol protocol,
struct pw_properties properties,
size_t  user_data_size 
)

Make a new client object.

Parameters
contexta pw_context object to register the client with
ucreda ucred structure or NULL when unknown
propertiesoptional client properties, ownership is taken
Returns
a newly allocated client object

References pw_permission::id, NAME, pw_permission::permissions, pw_array::pw_array_add(), pw_array::pw_array_init(), PW_ID_ANY, pw_log::pw_log_debug, pw_mempool_add_listener(), pw_mempool_new(), pw_properties::pw_properties_new(), res, and impl::this.

◆ pw_impl_client_destroy()

SPA_EXPORT void pw_impl_client_destroy ( struct pw_impl_client client)

Destroy a client object.

Parameters
clientthe client to destroy

References NAME, pw_log::pw_log_debug, and pw_map::pw_map_for_each().

◆ pw_impl_client_update_properties()

SPA_EXPORT int pw_impl_client_update_properties ( struct pw_impl_client client,
const struct spa_dict *  dict 
)

Update client properties.

Parameters
clientthe client
dicta spa_dict with properties

Add all properties in dict to the client properties. Existing properties are overwritten. Items can be removed by setting the value to NULL.

References res.


The documentation for this class was generated from the following files: