PipeWire: link.h File Reference

PipeWire 0.3.4

Data Structures | Macros | Enumerations | Functions
link.h File Reference
Include dependency graph for link.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
struct | pw_link_info
| The link information. More...
struct | pw_link_events
| Link events. More...
struct | pw_link_methods
| Link methods. More...

## Macros
#define | PW_TYPE_INTERFACE_Link PW_TYPE_INFO_INTERFACE_BASE "Link"
#define | PW_VERSION_LINK 3
#define | PW_LINK_CHANGE_MASK_STATE (1 << 0)
#define | PW_LINK_CHANGE_MASK_FORMAT (1 << 1)
#define | PW_LINK_CHANGE_MASK_PROPS (1 << 2)
#define | PW_LINK_CHANGE_MASK_ALL ((1 << 3)-1)
#define | PW_LINK_EVENT_INFO 0
#define | PW_LINK_EVENT_NUM 1
#define | PW_VERSION_LINK_EVENTS 0
#define | PW_LINK_METHOD_ADD_LISTENER 0
#define | PW_LINK_METHOD_NUM 1
#define | PW_VERSION_LINK_METHODS 0
#define | pw_link_method(o, method, version, ...)
#define | pw_link_add_listener(c, ...) pw_link_method(c,add_listener,0,__VA_ARGS__)

## Enumerations
enum | pw_link_state { PW_LINK_STATE_ERROR = -2, PW_LINK_STATE_UNLINKED = -1, PW_LINK_STATE_INIT = 0, PW_LINK_STATE_NEGOTIATING = 1, PW_LINK_STATE_ALLOCATING = 2, PW_LINK_STATE_PAUSED = 3 }

## Functions
struct pw_link_info * | pw_link_info_update (struct pw_link_info *info, const struct pw_link_info *update)
void | pw_link_info_free (struct pw_link_info *info)

## Macro Definition Documentation

## ◆ pw_link_add_listener

#define pw_link_add_listener | ( |  | c,
|  |  | ...
| ) |  | pw_link_method(c,add_listener,0,__VA_ARGS__)

## ◆ PW_LINK_CHANGE_MASK_ALL

#define PW_LINK_CHANGE_MASK_ALL ((1 << 3)-1)

## ◆ PW_LINK_CHANGE_MASK_FORMAT

#define PW_LINK_CHANGE_MASK_FORMAT (1 << 1)

## ◆ PW_LINK_CHANGE_MASK_PROPS

#define PW_LINK_CHANGE_MASK_PROPS (1 << 2)

## ◆ PW_LINK_CHANGE_MASK_STATE

#define PW_LINK_CHANGE_MASK_STATE (1 << 0)

## ◆ PW_LINK_EVENT_INFO

#define PW_LINK_EVENT_INFO 0

## ◆ PW_LINK_EVENT_NUM

#define PW_LINK_EVENT_NUM 1

## ◆ pw_link_method

#define pw_link_method | ( |  | o,
|  |  | method,
|  |  | version,
|  |  | ...
| ) |  |

Value:
({ \
int _res = -ENOTSUP; \
spa_interface_call_res((struct spa_interface*)o, \
struct pw_link_methods, _res, \
method, version, ##__VA_ARGS__); \
_res; \
})

## ◆ PW_LINK_METHOD_ADD_LISTENER

#define PW_LINK_METHOD_ADD_LISTENER 0

## ◆ PW_LINK_METHOD_NUM

#define PW_LINK_METHOD_NUM 1

## ◆ PW_TYPE_INTERFACE_Link

#define PW_TYPE_INTERFACE_Link PW_TYPE_INFO_INTERFACE_BASE "Link"

## ◆ PW_VERSION_LINK

#define PW_VERSION_LINK 3

## ◆ PW_VERSION_LINK_EVENTS

#define PW_VERSION_LINK_EVENTS 0

## ◆ PW_VERSION_LINK_METHODS

#define PW_VERSION_LINK_METHODS 0

## Enumeration Type Documentation

## ◆ pw_link_state

enum pw_link_state

The different link states

Enumerator
PW_LINK_STATE_ERROR | the link is in error
PW_LINK_STATE_UNLINKED | the link is unlinked
PW_LINK_STATE_INIT | the link is initialized
PW_LINK_STATE_NEGOTIATING | the link is negotiating formats
PW_LINK_STATE_ALLOCATING | the link is allocating buffers
PW_LINK_STATE_PAUSED | the link is paused

## Function Documentation

## ◆ pw_link_info_free()

void pw_link_info_free | ( | struct pw_link_info * | info | ) |

References pw_link_info::error, pw_link_info::format, and pw_link_info::props.

## ◆ pw_link_info_update()

struct pw_link_info* pw_link_info_update | ( | struct pw_link_info * | info,
|  | const struct pw_link_info * | update
| ) |  |

References pw_link_info::change_mask, pw_link_info::error, pw_link_info::format, pw_link_info::id, pw_link_info::input_node_id, pw_link_info::input_port_id, pw_link_info::output_node_id, pw_link_info::output_port_id, pw_link_info::props, PW_LINK_CHANGE_MASK_FORMAT, PW_LINK_CHANGE_MASK_PROPS, PW_LINK_CHANGE_MASK_STATE, and pw_link_info::state.

pw_link_methods
Link methods.
Definition: link.h:99