remote: move node export code to client-node module

Make the code to export objects more generic. Make it possible for
modules to register a type to export.
Make the client-node also able to export plain spa_nodes.
Let the remote signal the global of the exported object if any. We can
then remote the (unused) remote_id from the proxy.
This commit is contained in:
Wim Taymans 2019-01-31 11:02:13 +01:00
parent 7ec9de5ac6
commit 31dacd9d6f
20 changed files with 1236 additions and 1055 deletions

View file

@ -40,7 +40,7 @@ static void test_abi(void)
void (*destroy) (void *data);
void (*state_changed) (void *data, enum pw_remote_state old,
enum pw_remote_state state, const char *error);
void (*exported) (void *data, uint32_t id);
void (*exported) (void *data, uint32_t proxy_id, uint32_t remote_id);
} test = { PW_VERSION_REMOTE_EVENTS, NULL };
TEST_FUNC(ev, test, destroy);
@ -70,7 +70,7 @@ static void remote_state_changed_error(void *data, enum pw_remote_state old,
{
spa_assert_not_reached();
}
static void remote_exported_error(void *data, uint32_t id)
static void remote_exported_error(void *data, uint32_t proxy_id, uint32_t global_id)
{
spa_assert_not_reached();
}