PipeWire  1.0.7

Node interface. More...

Files

file  node.h
 pipewire/node.h
 

Data Structures

struct  pw_node_info
 The node information. More...
 
struct  pw_node_events
 Node events. More...
 
struct  pw_node_methods
 Node methods. More...
 
struct  pw_node
 

Enumerations

enum  pw_node_state {
  PW_NODE_STATE_ERROR = -1, PW_NODE_STATE_CREATING = 0, PW_NODE_STATE_SUSPENDED = 1, PW_NODE_STATE_IDLE = 2,
  PW_NODE_STATE_RUNNING = 3
}
 The different node states. More...
 

Macros

#define PW_TYPE_INTERFACE_Node   PW_TYPE_INFO_INTERFACE_BASE "Node"
 
#define PW_NODE_PERM_MASK   PW_PERM_RWXML
 
#define PW_VERSION_NODE   3
 
#define PW_NODE_CHANGE_MASK_INPUT_PORTS   (1 << 0)
 
#define PW_NODE_CHANGE_MASK_OUTPUT_PORTS   (1 << 1)
 
#define PW_NODE_CHANGE_MASK_STATE   (1 << 2)
 
#define PW_NODE_CHANGE_MASK_PROPS   (1 << 3)
 
#define PW_NODE_CHANGE_MASK_PARAMS   (1 << 4)
 
#define PW_NODE_CHANGE_MASK_ALL   ((1 << 5)-1)
 
#define PW_NODE_EVENT_INFO   0
 
#define PW_NODE_EVENT_PARAM   1
 
#define PW_NODE_EVENT_NUM   2
 
#define PW_VERSION_NODE_EVENTS   0
 
#define PW_NODE_METHOD_ADD_LISTENER   0
 
#define PW_NODE_METHOD_SUBSCRIBE_PARAMS   1
 
#define PW_NODE_METHOD_ENUM_PARAMS   2
 
#define PW_NODE_METHOD_SET_PARAM   3
 
#define PW_NODE_METHOD_SEND_COMMAND   4
 
#define PW_NODE_METHOD_NUM   5
 
#define PW_VERSION_NODE_METHODS   0
 
#define pw_node_method(o, method, version, ...)
 
#define pw_node_add_listener(c, ...)   pw_node_method(c,add_listener,0,__VA_ARGS__)
 Node. More...
 
#define pw_node_subscribe_params(c, ...)   pw_node_method(c,subscribe_params,0,__VA_ARGS__)
 
#define pw_node_enum_params(c, ...)   pw_node_method(c,enum_params,0,__VA_ARGS__)
 
#define pw_node_set_param(c, ...)   pw_node_method(c,set_param,0,__VA_ARGS__)
 
#define pw_node_send_command(c, ...)   pw_node_method(c,send_command,0,__VA_ARGS__)
 

Functions

const char * pw_node_state_as_string (enum pw_node_state state)
 Convert a pw_node_state to a readable string. More...
 
struct pw_node_infopw_node_info_update (struct pw_node_info *info, const struct pw_node_info *update)
 
struct pw_node_infopw_node_info_merge (struct pw_node_info *info, const struct pw_node_info *update, bool reset)
 
void pw_node_info_free (struct pw_node_info *info)
 

Detailed Description

Node interface.

Enumeration Type Documentation

The different node states.

Enumerator
PW_NODE_STATE_ERROR 

error state

PW_NODE_STATE_CREATING 

the node is being created

PW_NODE_STATE_SUSPENDED 

the node is suspended, the device might be closed

PW_NODE_STATE_IDLE 

the node is running but there is no active port

PW_NODE_STATE_RUNNING 

the node is running

Macro Definition Documentation

#define PW_TYPE_INTERFACE_Node   PW_TYPE_INFO_INTERFACE_BASE "Node"
Examples:
internal.c, and local-v4l2.c.
#define PW_NODE_PERM_MASK   PW_PERM_RWXML
#define PW_VERSION_NODE   3
Examples:
internal.c, and local-v4l2.c.
#define PW_NODE_CHANGE_MASK_INPUT_PORTS   (1 << 0)
#define PW_NODE_CHANGE_MASK_OUTPUT_PORTS   (1 << 1)
#define PW_NODE_CHANGE_MASK_STATE   (1 << 2)
#define PW_NODE_CHANGE_MASK_PROPS   (1 << 3)
#define PW_NODE_CHANGE_MASK_PARAMS   (1 << 4)
#define PW_NODE_CHANGE_MASK_ALL   ((1 << 5)-1)
#define PW_NODE_EVENT_INFO   0
#define PW_NODE_EVENT_PARAM   1
#define PW_NODE_EVENT_NUM   2
#define PW_VERSION_NODE_EVENTS   0
#define PW_NODE_METHOD_ADD_LISTENER   0
#define PW_NODE_METHOD_SUBSCRIBE_PARAMS   1
#define PW_NODE_METHOD_ENUM_PARAMS   2
#define PW_NODE_METHOD_SET_PARAM   3
#define PW_NODE_METHOD_SEND_COMMAND   4
#define PW_NODE_METHOD_NUM   5
#define PW_VERSION_NODE_METHODS   0
#define pw_node_method (   o,
  method,
  version,
  ... 
)
#define pw_node_add_listener (   c,
  ... 
)    pw_node_method(c,add_listener,0,__VA_ARGS__)
#define pw_node_subscribe_params (   c,
  ... 
)    pw_node_method(c,subscribe_params,0,__VA_ARGS__)
#define pw_node_enum_params (   c,
  ... 
)    pw_node_method(c,enum_params,0,__VA_ARGS__)
#define pw_node_set_param (   c,
  ... 
)    pw_node_method(c,set_param,0,__VA_ARGS__)
#define pw_node_send_command (   c,
  ... 
)    pw_node_method(c,send_command,0,__VA_ARGS__)

Function Documentation

const char* pw_node_state_as_string ( enum pw_node_state  state)

Convert a pw_node_state to a readable string.

struct pw_node_info* pw_node_info_update ( struct pw_node_info info,
const struct pw_node_info update 
)
struct pw_node_info* pw_node_info_merge ( struct pw_node_info info,
const struct pw_node_info update,
bool  reset 
)
void pw_node_info_free ( struct pw_node_info info)