PipeWire 0.3.77
|
Node interface. More...
Files | |
file | src/pipewire/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... | |
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_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) |
Node interface.
#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.
#define pw_node_subscribe_params | ( | c, | |
... | |||
) | pw_node_method(c,subscribe_params,0,__VA_ARGS__) |
Subscribe to parameter changes.
Automatically emit param events for the given ids when they are changed.
ids | an array of param ids |
n_ids | the number of ids in ids |
This requires X permissions on the node.
#define pw_node_enum_params | ( | c, | |
... | |||
) | pw_node_method(c,enum_params,0,__VA_ARGS__) |
Enumerate node parameters.
Start enumeration of node parameters. For each param, a param event will be emitted.
seq | a sequence number to place in the reply |
id | the parameter id to enum or PW_ID_ANY for all |
start | the start index or 0 for the first param |
num | the maximum number of params to retrieve |
filter | a param filter or NULL |
This requires X permissions on the node.
#define pw_node_set_param | ( | c, | |
... | |||
) | pw_node_method(c,set_param,0,__VA_ARGS__) |
Set a parameter on the node.
id | the parameter id to set |
flags | extra parameter flags |
param | the parameter to set |
This requires X and W permissions on the node.
#define pw_node_send_command | ( | c, | |
... | |||
) | pw_node_method(c,send_command,0,__VA_ARGS__) |
Send a command to the node.
command | the command to send |
This requires X and W permissions on the node.
enum pw_node_state |
The different node states.
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 | ) |