PipeWire 1.2.7
Loading...
Searching...
No Matches

Files

file  impl-client.h
 pipewire/impl-client.h
 

Data Structures

struct  pw_impl_client_events
 The events that a client can emit. More...
 
struct  pw_impl_client
 

Macros

#define PW_VERSION_IMPL_CLIENT_EVENTS   0
 

Functions

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)
 Create a new client.
 
void pw_impl_client_destroy (struct pw_impl_client *client)
 Destroy a previously created client.
 
int pw_impl_client_register (struct pw_impl_client *client, struct pw_properties *properties)
 Finish configuration and register a client.
 
void * pw_impl_client_get_user_data (struct pw_impl_client *client)
 Get the client user data.
 
const struct pw_client_infopw_impl_client_get_info (struct pw_impl_client *client)
 Get the client information.
 
int pw_impl_client_update_properties (struct pw_impl_client *client, const struct spa_dict *dict)
 Update the client properties.
 
int pw_impl_client_update_permissions (struct pw_impl_client *client, uint32_t n_permissions, const struct pw_permission *permissions)
 Update the client permissions.
 
int pw_impl_client_check_permissions (struct pw_impl_client *client, uint32_t global_id, uint32_t permissions)
 check if a client has permissions for global_id, Since 0.3.9
 
const struct pw_propertiespw_impl_client_get_properties (struct pw_impl_client *client)
 Get the client properties.
 
struct pw_contextpw_impl_client_get_context (struct pw_impl_client *client)
 Get the context used to create this client.
 
struct pw_protocolpw_impl_client_get_protocol (struct pw_impl_client *client)
 Get the protocol used to create this client.
 
struct pw_resourcepw_impl_client_get_core_resource (struct pw_impl_client *client)
 Get the client core resource.
 
struct pw_resourcepw_impl_client_find_resource (struct pw_impl_client *client, uint32_t id)
 Get a resource with the given id.
 
struct pw_globalpw_impl_client_get_global (struct pw_impl_client *client)
 Get the global associated with this client.
 
struct pw_mempoolpw_impl_client_get_mempool (struct pw_impl_client *client)
 Get the mempool associated with this client, Since 0.3.74.
 
void pw_impl_client_add_listener (struct pw_impl_client *client, struct spa_hook *listener, const struct pw_impl_client_events *events, void *data)
 listen to events from this client
 
void pw_impl_client_set_busy (struct pw_impl_client *client, bool busy)
 Mark the client busy.
 

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.

See also
Client Implementation

Macro Definition Documentation

◆ PW_VERSION_IMPL_CLIENT_EVENTS

#define PW_VERSION_IMPL_CLIENT_EVENTS   0

Function Documentation

◆ pw_context_create_client()

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 )

Create a new client.

This is mainly used by protocols.

Create a new client.

Parameters
corea Context object to register the client with
propertiesoptional client properties, ownership is taken
Returns
a newly allocated client object
Parameters
corethe core object
protocolthe client protocol
propertiesclient properties
user_data_sizeextra user data size

◆ pw_impl_client_destroy()

void pw_impl_client_destroy ( struct pw_impl_client * client)

Destroy a previously created client.

Destroy a previously created client.

Parameters
clientthe client to destroy

◆ pw_impl_client_register()

int pw_impl_client_register ( struct pw_impl_client * client,
struct pw_properties * properties )

Finish configuration and register a client.

Parameters
clientthe client to register
propertiesextra properties

◆ pw_impl_client_get_user_data()

void * pw_impl_client_get_user_data ( struct pw_impl_client * client)

Get the client user data.

◆ pw_impl_client_get_info()

const struct pw_client_info * pw_impl_client_get_info ( struct pw_impl_client * client)

Get the client information.

◆ pw_impl_client_update_properties()

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

Update the client properties.

Update the client properties.

Parameters
clientthe client
dicta struct 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.

◆ pw_impl_client_update_permissions()

int pw_impl_client_update_permissions ( struct pw_impl_client * client,
uint32_t n_permissions,
const struct pw_permission * permissions )

Update the client permissions.

◆ pw_impl_client_check_permissions()

int pw_impl_client_check_permissions ( struct pw_impl_client * client,
uint32_t global_id,
uint32_t permissions )

check if a client has permissions for global_id, Since 0.3.9

◆ pw_impl_client_get_properties()

const struct pw_properties * pw_impl_client_get_properties ( struct pw_impl_client * client)

Get the client properties.

◆ pw_impl_client_get_context()

struct pw_context * pw_impl_client_get_context ( struct pw_impl_client * client)

Get the context used to create this client.

◆ pw_impl_client_get_protocol()

struct pw_protocol * pw_impl_client_get_protocol ( struct pw_impl_client * client)

Get the protocol used to create this client.

◆ pw_impl_client_get_core_resource()

struct pw_resource * pw_impl_client_get_core_resource ( struct pw_impl_client * client)

Get the client core resource.

◆ pw_impl_client_find_resource()

struct pw_resource * pw_impl_client_find_resource ( struct pw_impl_client * client,
uint32_t id )

Get a resource with the given id.

◆ pw_impl_client_get_global()

struct pw_global * pw_impl_client_get_global ( struct pw_impl_client * client)

Get the global associated with this client.

◆ pw_impl_client_get_mempool()

struct pw_mempool * pw_impl_client_get_mempool ( struct pw_impl_client * client)

Get the mempool associated with this client, Since 0.3.74.

◆ pw_impl_client_add_listener()

void pw_impl_client_add_listener ( struct pw_impl_client * client,
struct spa_hook * listener,
const struct pw_impl_client_events * events,
void * data )

listen to events from this client

◆ pw_impl_client_set_busy()

void pw_impl_client_set_busy ( struct pw_impl_client * client,
bool busy )

Mark the client busy.

This can be used when an asynchronous operation is started and no further processing is allowed to happen for the client