PipeWire 1.6.8

Loading...
Searching...
No Matches
Client Impl
Implementation API

PipeWire client object class. More...

## 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_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.
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_info * | pw_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_properties * | pw_impl_client_get_properties (struct pw_impl_client *client)
| Get the client properties.
struct pw_context * | pw_impl_client_get_context (struct pw_impl_client *client)
| Get the context used to create this client.
struct pw_protocol * | pw_impl_client_get_protocol (struct pw_impl_client *client)
| Get the protocol used to create this client.
struct pw_resource * | pw_impl_client_get_core_resource (struct pw_impl_client *client)
| Get the client core resource.
struct pw_resource * | pw_impl_client_find_resource (struct pw_impl_client *client, uint32_t id)
| Get a resource with the given id.
struct pw_global * | pw_impl_client_get_global (struct pw_impl_client *client)
| Get the global associated with this client.
struct pw_mempool * | pw_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

  core | a Context object to register the client with
  properties | optional client properties, ownership is taken

Returns
  a newly allocated client object

Parameters

  core | the core object
  protocol | the client protocol
  properties | client properties
  user_data_size | extra 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

  client | the 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

  client | the client to register
  properties | extra 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

  client | the client
  dict | a 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