PipeWire  0.2.9
link.c File Reference
Include dependency graph for link.c:

Macros

#define MAX_BUFFERS   64
 
#define pw_link_resource_info(r, ...)   pw_resource_call(r,struct pw_link_proxy_events,info,0,__VA_ARGS__)
 

Functions

int pw_link_activate (struct pw_link *this)
 
int pw_link_prepare (struct pw_link *this)
 
int pw_link_deactivate (struct pw_link *this)
 
SPA_EXPORT struct pw_linkpw_link_new (struct pw_core *core, struct pw_port *output, struct pw_port *input, struct spa_pod *format_filter, struct pw_properties *properties, size_t user_data_size)
 
SPA_EXPORT int pw_link_register (struct pw_link *link, struct pw_client *owner, struct pw_global *parent, struct pw_properties *properties)
 Finish link configuration and register. More...
 
SPA_EXPORT void pw_link_destroy (struct pw_link *link)
 
SPA_EXPORT void pw_link_add_listener (struct pw_link *link, struct spa_hook *listener, const struct pw_link_events *events, void *data)
 Add an event listener to link. More...
 
struct pw_linkpw_link_find (struct pw_port *output_port, struct pw_port *input_port)
 
SPA_EXPORT struct pw_corepw_link_get_core (struct pw_link *link)
 Get the core of a link. More...
 
SPA_EXPORT void * pw_link_get_user_data (struct pw_link *link)
 Get the user_data of a link, the size of the memory is given when constructing the link. More...
 
SPA_EXPORT const struct pw_link_infopw_link_get_info (struct pw_link *link)
 Get the link info. More...
 
SPA_EXPORT struct pw_globalpw_link_get_global (struct pw_link *link)
 Get the global of the link. More...
 
SPA_EXPORT struct pw_portpw_link_get_output (struct pw_link *link)
 Get the output port of the link. More...
 
SPA_EXPORT struct pw_portpw_link_get_input (struct pw_link *link)
 Get the input port of the link. More...
 

Macro Definition Documentation

◆ MAX_BUFFERS

#define MAX_BUFFERS   64

◆ pw_link_resource_info

#define pw_link_resource_info (   r,
  ... 
)    pw_resource_call(r,struct pw_link_proxy_events,info,0,__VA_ARGS__)

Function Documentation

◆ pw_link_activate()

int pw_link_activate ( struct pw_link this)

◆ pw_link_add_listener()

SPA_EXPORT void pw_link_add_listener ( struct pw_link link,
struct spa_hook *  listener,
const struct pw_link_events events,
void *  data 
)

Add an event listener to link.

References pw_log::pw_log_debug.

◆ pw_link_deactivate()

int pw_link_deactivate ( struct pw_link this)

References pw_log::pw_log_debug, and pw_loop_invoke.

Referenced by pw_link_destroy().

◆ pw_link_destroy()

SPA_EXPORT void pw_link_destroy ( struct pw_link link)

◆ pw_link_find()

struct pw_link* pw_link_find ( struct pw_port output_port,
struct pw_port input_port 
)

◆ pw_link_get_core()

SPA_EXPORT struct pw_core* pw_link_get_core ( struct pw_link link)

Get the core of a link.

◆ pw_link_get_global()

SPA_EXPORT struct pw_global* pw_link_get_global ( struct pw_link link)

Get the global of the link.

◆ pw_link_get_info()

SPA_EXPORT const struct pw_link_info* pw_link_get_info ( struct pw_link link)

Get the link info.

◆ pw_link_get_input()

SPA_EXPORT struct pw_port* pw_link_get_input ( struct pw_link link)

Get the input port of the link.

◆ pw_link_get_output()

SPA_EXPORT struct pw_port* pw_link_get_output ( struct pw_link link)

Get the output port of the link.

◆ pw_link_get_user_data()

SPA_EXPORT void* pw_link_get_user_data ( struct pw_link link)

Get the user_data of a link, the size of the memory is given when constructing the link.

◆ pw_link_new()

SPA_EXPORT struct pw_link* pw_link_new ( struct pw_core core,
struct pw_port output,
struct pw_port input,
struct spa_pod *  format_filter,
struct pw_properties properties,
size_t  user_data_size 
)

◆ pw_link_prepare()

int pw_link_prepare ( struct pw_link this)

References pw_log::pw_log_debug.

Referenced by pw_link_activate().

◆ pw_link_register()

SPA_EXPORT int pw_link_register ( struct pw_link link,
struct pw_client owner,
struct pw_global parent,
struct pw_properties properties 
)

Finish link configuration and register.

Parameters
linkthe link to register
owneroptional link owner
parentparent global
propertiesextra properties

References pw_global::pw_global_new(), PW_KEY_LINK_INPUT_PORT, PW_KEY_LINK_OUTPUT_PORT, pw_properties::pw_properties_new(), pw_properties::pw_properties_setf(), PW_TYPE_INTERFACE_Link, and PW_VERSION_LINK_PROXY.