PipeWire  0.3.5
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 NAME, PW_CLIENT_CHANGE_MASK_PROPS, pw_log::pw_log_debug, and pw_properties::pw_properties_update().


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