node: Add ParamBegin/End

Use these commands to mark the begin and end of a series of Param
enumerations and configuration, like when doing format negotiation. The
idea is that the device can remain open while we do this.
Use this in adapter when negotiating a format.
This commit is contained in:
Wim Taymans 2020-12-09 17:10:52 +01:00
parent ccfe439786
commit 4e7be858e4
8 changed files with 55 additions and 10 deletions

View file

@ -33,14 +33,22 @@ extern "C" {
/* object id of SPA_TYPE_COMMAND_Node */
enum spa_node_command {
SPA_NODE_COMMAND_Suspend,
SPA_NODE_COMMAND_Pause,
SPA_NODE_COMMAND_Start,
SPA_NODE_COMMAND_Suspend, /**< suspend a node, this removes all configured
* formats and closes any devices */
SPA_NODE_COMMAND_Pause, /**< pause a node. this makes it stop emiting
* scheduling events */
SPA_NODE_COMMAND_Start, /**< start a node, this makes it start emiting
* scheduling events */
SPA_NODE_COMMAND_Enable,
SPA_NODE_COMMAND_Disable,
SPA_NODE_COMMAND_Flush,
SPA_NODE_COMMAND_Drain,
SPA_NODE_COMMAND_Marker,
SPA_NODE_COMMAND_ParamBegin, /**< begin a set of parameter enumerations or
* configuration that require the device to
* remain opened, like query formats and then
* set a format */
SPA_NODE_COMMAND_ParamEnd, /**< end a transaction */
};
#define SPA_NODE_COMMAND_ID(cmd) SPA_COMMAND_ID(cmd, SPA_TYPE_COMMAND_Node)