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

Files

file  impl-port.h
 pipewire/impl-port.h
 

Data Structures

struct  pw_impl_port_events
 Port events, use pw_impl_port_add_listener. More...
 
struct  pw_impl_port
 
struct  pw_impl_link
 
struct  pw_control
 

Enumerations

enum  pw_impl_port_state {
  PW_IMPL_PORT_STATE_ERROR = -1 , PW_IMPL_PORT_STATE_INIT = 0 , PW_IMPL_PORT_STATE_CONFIGURE = 1 , PW_IMPL_PORT_STATE_READY = 2 ,
  PW_IMPL_PORT_STATE_PAUSED = 3
}
 

Macros

#define PW_VERSION_IMPL_PORT_EVENTS   3
 

Functions

struct pw_impl_portpw_context_create_port (struct pw_context *context, enum pw_direction direction, uint32_t port_id, const struct spa_port_info *info, size_t user_data_size)
 Create a new port.
 
enum pw_direction pw_impl_port_get_direction (struct pw_impl_port *port)
 Get the port direction.
 
const struct pw_propertiespw_impl_port_get_properties (struct pw_impl_port *port)
 Get the port properties.
 
int pw_impl_port_update_properties (struct pw_impl_port *port, const struct spa_dict *dict)
 Update the port properties.
 
const struct pw_port_infopw_impl_port_get_info (struct pw_impl_port *port)
 Get the port info.
 
uint32_t pw_impl_port_get_id (struct pw_impl_port *port)
 Get the port id.
 
const char * pw_impl_port_state_as_string (enum pw_impl_port_state state)
 Get the port state as a string.
 
struct pw_impl_nodepw_impl_port_get_node (struct pw_impl_port *port)
 Get the port parent node or NULL when not yet set.
 
int pw_impl_port_is_linked (struct pw_impl_port *port)
 check is a port has links, return 0 if not, 1 if it is linked
 
int pw_impl_port_add (struct pw_impl_port *port, struct pw_impl_node *node)
 Add a port to a node.
 
void pw_impl_port_add_listener (struct pw_impl_port *port, struct spa_hook *listener, const struct pw_impl_port_events *events, void *data)
 Add an event listener on the port.
 

Detailed Description

A port can be used to link two nodes.

Enumeration Type Documentation

◆ pw_impl_port_state

Enumerator
PW_IMPL_PORT_STATE_ERROR 

the port is in error

PW_IMPL_PORT_STATE_INIT 

the port is being created

PW_IMPL_PORT_STATE_CONFIGURE 

the port is ready for format negotiation

PW_IMPL_PORT_STATE_READY 

the port is ready for buffer allocation

PW_IMPL_PORT_STATE_PAUSED 

the port is paused

Macro Definition Documentation

◆ PW_VERSION_IMPL_PORT_EVENTS

#define PW_VERSION_IMPL_PORT_EVENTS   3

Function Documentation

◆ pw_context_create_port()

struct pw_impl_port * pw_context_create_port ( struct pw_context * context,
enum pw_direction direction,
uint32_t port_id,
const struct spa_port_info * info,
size_t user_data_size )

Create a new port.

Returns
a newly allocated port

◆ pw_impl_port_get_direction()

enum pw_direction pw_impl_port_get_direction ( struct pw_impl_port * port)

Get the port direction.

◆ pw_impl_port_get_properties()

const struct pw_properties * pw_impl_port_get_properties ( struct pw_impl_port * port)

Get the port properties.

◆ pw_impl_port_update_properties()

int pw_impl_port_update_properties ( struct pw_impl_port * port,
const struct spa_dict * dict )

Update the port properties.

◆ pw_impl_port_get_info()

const struct pw_port_info * pw_impl_port_get_info ( struct pw_impl_port * port)

Get the port info.

◆ pw_impl_port_get_id()

uint32_t pw_impl_port_get_id ( struct pw_impl_port * port)

Get the port id.

◆ pw_impl_port_state_as_string()

const char * pw_impl_port_state_as_string ( enum pw_impl_port_state state)

Get the port state as a string.

◆ pw_impl_port_get_node()

struct pw_impl_node * pw_impl_port_get_node ( struct pw_impl_port * port)

Get the port parent node or NULL when not yet set.

◆ pw_impl_port_is_linked()

int pw_impl_port_is_linked ( struct pw_impl_port * port)

check is a port has links, return 0 if not, 1 if it is linked

◆ pw_impl_port_add()

int pw_impl_port_add ( struct pw_impl_port * port,
struct pw_impl_node * node )

Add a port to a node.

◆ pw_impl_port_add_listener()

void pw_impl_port_add_listener ( struct pw_impl_port * port,
struct spa_hook * listener,
const struct pw_impl_port_events * events,
void * data )

Add an event listener on the port.