PipeWire 1.4.1
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
node.h File Reference

pipewire/node.h More...

Go to the source code of this file.

Data Structures

struct  pw_node_info
 The node information. More...
 
struct  pw_node_events
 Node events. More...
 
struct  pw_node_methods
 Node methods. 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_API_NODE_IMPL   static inline
 
#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
 

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...
 

Functions

const char * pw_node_state_as_string (enum pw_node_state state)
 Convert a pw_node_state to a readable string.
 
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)
 
PW_API_NODE_IMPL int pw_node_add_listener (struct pw_node *object, struct spa_hook *listener, const struct pw_node_events *events, void *data)
 
PW_API_NODE_IMPL int pw_node_subscribe_params (struct pw_node *object, uint32_t *ids, uint32_t n_ids)
 Subscribe to parameter changes.
 
PW_API_NODE_IMPL int pw_node_enum_params (struct pw_node *object, int seq, uint32_t id, uint32_t start, uint32_t num, const struct spa_pod *filter)
 Enumerate node parameters.
 
PW_API_NODE_IMPL int pw_node_set_param (struct pw_node *object, uint32_t id, uint32_t flags, const struct spa_pod *param)
 Set a parameter on the node.
 
PW_API_NODE_IMPL int pw_node_send_command (struct pw_node *object, const struct spa_command *command)
 Send a command to the node.
 

Detailed Description