PipeWire  0.1.5.1
pw_core_proxy_methods Struct Reference

Core methods. More...

Data Fields

uint32_t version
 
void(* update_types )(void *object, uint32_t first_id, uint32_t n_types, const char **types)
 Update the type map. More...
 
void(* sync )(void *object, uint32_t seq)
 Do server roundtrip. More...
 
void(* get_registry )(void *object, uint32_t version, uint32_t new_id)
 Get the registry object. More...
 
void(* client_update )(void *object, const struct spa_dict *props)
 Update the client properties. More...
 
void(* create_object )(void *object, const char *factory_name, uint32_t type, uint32_t version, const struct spa_dict *props, uint32_t new_id)
 Create a new object on the PipeWire server from a factory. More...
 
void(* create_link )(void *object, uint32_t output_node_id, uint32_t output_port_id, uint32_t input_node_id, uint32_t input_port_id, const struct spa_format *filter, const struct spa_dict *props, uint32_t new_id)
 Create a new link between two node ports. More...
 

Detailed Description

Core methods.

The core global object. This is a singleton object used for creating new objects in the remote PipeWire intance. It is also used for internal features.

Field Documentation

◆ client_update

void(* pw_core_proxy_methods::client_update) (void *object, const struct spa_dict *props)

Update the client properties.

Parameters
propsthe new client properties

◆ create_link

void(* pw_core_proxy_methods::create_link) (void *object, uint32_t output_node_id, uint32_t output_port_id, uint32_t input_node_id, uint32_t input_port_id, const struct spa_format *filter, const struct spa_dict *props, uint32_t new_id)

Create a new link between two node ports.

Parameters
output_node_idthe global id of the output node
output_port_idthe id of the output port
input_node_idthe global id of the input node
input_port_idthe id of the input port
filteran optional format filter
propsoptional properties
new_idthe client proxy id

◆ create_object

void(* pw_core_proxy_methods::create_object) (void *object, const char *factory_name, uint32_t type, uint32_t version, const struct spa_dict *props, uint32_t new_id)

Create a new object on the PipeWire server from a factory.

Use a factory_name of "client-node" to create a pw_client_node.

Parameters
factory_namethe factory name to use
typethe interface to bind to
versionthe version of the interface
propsextra properties
new_idthe client proxy id

◆ get_registry

void(* pw_core_proxy_methods::get_registry) (void *object, uint32_t version, uint32_t new_id)

Get the registry object.

Create a registry object that allows the client to list and bind the global objects available from the PipeWire server

Parameters
versionthe client proxy id
idthe client proxy id

◆ sync

void(* pw_core_proxy_methods::sync) (void *object, uint32_t seq)

Do server roundtrip.

Ask the server to emit the 'done' event with id. Since methods are handled in-order and events are delivered in-order, this can be used as a barrier to ensure all previous methods and the resulting events have been handled.

Parameters
seqthe sequence number passed to the done event

◆ update_types

void(* pw_core_proxy_methods::update_types) (void *object, uint32_t first_id, uint32_t n_types, const char **types)

Update the type map.

Send a type map update to the PipeWire server. The server uses this information to keep a mapping between client types and the server types.

Parameters
first_idthe id of the first type
n_typesthe number of types
typesthe types as a string

◆ version

uint32_t pw_core_proxy_methods::version

The documentation for this struct was generated from the following file: