pw_factory -> pw_impl_factory

This commit is contained in:
Wim Taymans 2019-12-11 11:45:27 +01:00
parent 73900eea1b
commit 815d4a8d20
17 changed files with 170 additions and 169 deletions

View file

@ -48,7 +48,7 @@ struct data {
static int make_device(struct data *data) static int make_device(struct data *data)
{ {
struct pw_factory *factory; struct pw_impl_factory *factory;
struct pw_properties *props; struct pw_properties *props;
factory = pw_context_find_factory(data->context, "spa-device-factory"); factory = pw_context_find_factory(data->context, "spa-device-factory");
@ -58,7 +58,7 @@ static int make_device(struct data *data)
props = pw_properties_new(SPA_KEY_LIBRARY_NAME, data->library, props = pw_properties_new(SPA_KEY_LIBRARY_NAME, data->library,
SPA_KEY_FACTORY_NAME, data->factory, NULL); SPA_KEY_FACTORY_NAME, data->factory, NULL);
data->device = pw_factory_create_object(factory, data->device = pw_impl_factory_create_object(factory,
NULL, NULL,
PW_TYPE_INTERFACE_Device, PW_TYPE_INTERFACE_Device,
PW_VERSION_DEVICE_PROXY, PW_VERSION_DEVICE_PROXY,

View file

@ -107,7 +107,7 @@ static struct bluez5_node *bluez5_create_node(struct bluez5_object *obj, uint32_
struct bluez5_node *node; struct bluez5_node *node;
struct impl *impl = obj->impl; struct impl *impl = obj->impl;
struct pw_context *context = impl->session->context; struct pw_context *context = impl->session->context;
struct pw_factory *factory; struct pw_impl_factory *factory;
int res; int res;
const char *str; const char *str;
@ -149,7 +149,7 @@ static struct bluez5_node *bluez5_create_node(struct bluez5_object *obj, uint32_
res = -EIO; res = -EIO;
goto clean_node; goto clean_node;
} }
node->adapter = pw_factory_create_object(factory, node->adapter = pw_impl_factory_create_object(factory,
NULL, NULL,
PW_TYPE_INTERFACE_Node, PW_TYPE_INTERFACE_Node,
PW_VERSION_NODE_PROXY, PW_VERSION_NODE_PROXY,

View file

@ -51,7 +51,7 @@ static const struct spa_dict_item module_props[] = {
}; };
struct factory_data { struct factory_data {
struct pw_factory *this; struct pw_impl_factory *this;
struct spa_list node_list; struct spa_list node_list;
@ -238,8 +238,8 @@ error_cleanup:
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -253,23 +253,23 @@ static void module_destroy(void *data)
spa_list_for_each_safe(nd, t, &d->node_list, link) spa_list_for_each_safe(nd, t, &d->node_list, link)
pw_node_destroy(nd->adapter); pw_node_destroy(nd->adapter);
pw_factory_destroy(d->this); pw_impl_factory_destroy(d->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", module->global->id); snprintf(id, sizeof(id), "%d", module->global->id);
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -284,10 +284,10 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"adapter", "adapter",
PW_TYPE_INTERFACE_Node, PW_TYPE_INTERFACE_Node,
PW_VERSION_NODE_PROXY, PW_VERSION_NODE_PROXY,
@ -298,7 +298,7 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->context = context; data->context = context;
data->module = module; data->module = module;
@ -306,7 +306,7 @@ int pipewire__module_init(struct pw_module *module, const char *args)
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_factory_set_implementation(factory, pw_impl_factory_set_implementation(factory,
&impl_factory, &impl_factory,
data); data);

View file

@ -50,7 +50,7 @@ struct pw_proxy *pw_core_spa_device_export(struct pw_core *core,
struct pw_protocol *pw_protocol_native_ext_client_device_init(struct pw_context *context); struct pw_protocol *pw_protocol_native_ext_client_device_init(struct pw_context *context);
struct factory_data { struct factory_data {
struct pw_factory *this; struct pw_impl_factory *this;
struct pw_module *module; struct pw_module *module;
struct spa_hook module_listener; struct spa_hook module_listener;
@ -66,7 +66,7 @@ static void *create_object(void *_data,
uint32_t new_id) uint32_t new_id)
{ {
struct factory_data *data = _data; struct factory_data *data = _data;
struct pw_factory *this = data->this; struct pw_impl_factory *this = data->this;
void *result; void *result;
struct pw_resource *device_resource; struct pw_resource *device_resource;
struct pw_impl_client *client = pw_resource_get_client(resource); struct pw_impl_client *client = pw_resource_get_client(resource);
@ -86,7 +86,7 @@ static void *create_object(void *_data,
} }
pw_properties_setf(properties, PW_KEY_FACTORY_ID, "%d", pw_properties_setf(properties, PW_KEY_FACTORY_ID, "%d",
pw_global_get_id(pw_factory_get_global(this))); pw_global_get_id(pw_impl_factory_get_global(this)));
pw_properties_setf(properties, PW_KEY_CLIENT_ID, "%d", pw_properties_setf(properties, PW_KEY_CLIENT_ID, "%d",
pw_global_get_id(pw_impl_client_get_global(client))); pw_global_get_id(pw_impl_client_get_global(client)));
@ -117,8 +117,8 @@ error_exit:
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -130,23 +130,23 @@ static void module_destroy(void *data)
spa_list_remove(&d->export_spadevice.link); spa_list_remove(&d->export_spadevice.link);
pw_factory_destroy(d->this); pw_impl_factory_destroy(d->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module))); snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module)));
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -161,10 +161,10 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"client-device", "client-device",
SPA_TYPE_INTERFACE_Device, SPA_TYPE_INTERFACE_Device,
SPA_VERSION_DEVICE, SPA_VERSION_DEVICE,
@ -175,13 +175,13 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->module = module; data->module = module;
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_factory_set_implementation(factory, pw_impl_factory_set_implementation(factory,
&impl_factory, &impl_factory,
data); data);

View file

@ -53,7 +53,7 @@ struct pw_protocol *pw_protocol_native_ext_client_node_init(struct pw_context *c
struct pw_protocol *pw_protocol_native_ext_client_node0_init(struct pw_context *context); struct pw_protocol *pw_protocol_native_ext_client_node0_init(struct pw_context *context);
struct factory_data { struct factory_data {
struct pw_factory *this; struct pw_impl_factory *this;
struct pw_module *module; struct pw_module *module;
struct spa_hook module_listener; struct spa_hook module_listener;
@ -107,8 +107,8 @@ error_exit:
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -121,23 +121,23 @@ static void module_destroy(void *data)
spa_list_remove(&d->export_node.link); spa_list_remove(&d->export_node.link);
spa_list_remove(&d->export_spanode.link); spa_list_remove(&d->export_spanode.link);
pw_factory_destroy(d->this); pw_impl_factory_destroy(d->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module))); snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module)));
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -152,10 +152,10 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"client-node", "client-node",
PW_TYPE_INTERFACE_ClientNode, PW_TYPE_INTERFACE_ClientNode,
PW_VERSION_CLIENT_NODE, PW_VERSION_CLIENT_NODE,
@ -164,13 +164,13 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->module = module; data->module = module;
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_factory_set_implementation(factory, pw_impl_factory_set_implementation(factory,
&impl_factory, &impl_factory,
data); data);

View file

@ -49,7 +49,7 @@ static const struct spa_dict_item module_props[] = {
struct factory_data { struct factory_data {
struct pw_module *module; struct pw_module *module;
struct pw_factory *this; struct pw_impl_factory *this;
struct spa_list link_list; struct spa_list link_list;
@ -319,8 +319,8 @@ error_exit:
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -334,23 +334,23 @@ static void module_destroy(void *data)
spa_list_for_each_safe(ld, t, &d->link_list, l) spa_list_for_each_safe(ld, t, &d->link_list, l)
pw_link_destroy(ld->link); pw_link_destroy(ld->link);
pw_factory_destroy(d->this); pw_impl_factory_destroy(d->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module))); snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module)));
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -365,10 +365,10 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"link-factory", "link-factory",
PW_TYPE_INTERFACE_Link, PW_TYPE_INTERFACE_Link,
PW_VERSION_LINK_PROXY, PW_VERSION_LINK_PROXY,
@ -379,14 +379,14 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->module = module; data->module = module;
spa_list_init(&data->link_list); spa_list_init(&data->link_list);
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_factory_set_implementation(factory, pw_impl_factory_set_implementation(factory,
&impl_factory, &impl_factory,
data); data);

View file

@ -52,7 +52,7 @@ struct pw_proxy *pw_core_metadata_export(struct pw_core *core,
int pw_protocol_native_ext_metadata_init(struct pw_context *context); int pw_protocol_native_ext_metadata_init(struct pw_context *context);
struct factory_data { struct factory_data {
struct pw_factory *this; struct pw_impl_factory *this;
struct pw_module *module; struct pw_module *module;
struct spa_hook module_listener; struct spa_hook module_listener;
@ -103,8 +103,8 @@ error_exit:
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -116,23 +116,23 @@ static void module_destroy(void *data)
spa_list_remove(&d->export_metadata.link); spa_list_remove(&d->export_metadata.link);
pw_factory_destroy(d->this); pw_impl_factory_destroy(d->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module))); snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module)));
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -147,14 +147,14 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
int res; int res;
if ((res = pw_protocol_native_ext_metadata_init(context)) < 0) if ((res = pw_protocol_native_ext_metadata_init(context)) < 0)
return res; return res;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"metadata", "metadata",
PW_TYPE_INTERFACE_Metadata, PW_TYPE_INTERFACE_Metadata,
PW_VERSION_METADATA, PW_VERSION_METADATA,
@ -163,13 +163,13 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->module = module; data->module = module;
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_factory_set_implementation(factory, pw_impl_factory_set_implementation(factory,
&impl_factory, &impl_factory,
data); data);

View file

@ -38,7 +38,7 @@
#define NAME "client-endpoint" #define NAME "client-endpoint"
struct factory_data { struct factory_data {
struct pw_factory *factory; struct pw_impl_factory *factory;
struct pw_module *module; struct pw_module *module;
struct spa_hook module_listener; struct spa_hook module_listener;
}; };
@ -166,7 +166,7 @@ static void *create_object(void *data,
uint32_t new_id) uint32_t new_id)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_factory *factory = d->factory; struct pw_impl_factory *factory = d->factory;
struct client_endpoint *this; struct client_endpoint *this;
struct pw_impl_client *owner = pw_resource_get_client(owner_resource); struct pw_impl_client *owner = pw_resource_get_client(owner_resource);
struct pw_context *context = pw_impl_client_get_context(owner); struct pw_context *context = pw_impl_client_get_context(owner);
@ -213,8 +213,8 @@ static void *create_object(void *data,
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -223,23 +223,23 @@ static void module_destroy(void *data)
struct factory_data *d = data; struct factory_data *d = data;
spa_hook_remove(&d->module_listener); spa_hook_remove(&d->module_listener);
pw_factory_destroy(d->factory); pw_impl_factory_destroy(d->factory);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->factory; struct pw_impl_factory *factory = d->factory;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", module->global->id); snprintf(id, sizeof(id), "%d", module->global->id);
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -253,10 +253,10 @@ static const struct pw_module_events module_events = {
int client_endpoint_factory_init(struct pw_module *module) int client_endpoint_factory_init(struct pw_module *module)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"client-endpoint", "client-endpoint",
PW_TYPE_INTERFACE_ClientEndpoint, PW_TYPE_INTERFACE_ClientEndpoint,
PW_VERSION_CLIENT_ENDPOINT_PROXY, PW_VERSION_CLIENT_ENDPOINT_PROXY,
@ -265,11 +265,11 @@ int client_endpoint_factory_init(struct pw_module *module)
if (factory == NULL) if (factory == NULL)
return -ENOMEM; return -ENOMEM;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->factory = factory; data->factory = factory;
data->module = module; data->module = module;
pw_factory_set_implementation(factory, &impl_factory, data); pw_impl_factory_set_implementation(factory, &impl_factory, data);
pw_module_add_listener(module, &data->module_listener, &module_events, data); pw_module_add_listener(module, &data->module_listener, &module_events, data);

View file

@ -38,7 +38,7 @@
#define NAME "client-session" #define NAME "client-session"
struct factory_data { struct factory_data {
struct pw_factory *factory; struct pw_impl_factory *factory;
struct pw_module *module; struct pw_module *module;
struct spa_hook module_listener; struct spa_hook module_listener;
}; };
@ -165,7 +165,7 @@ static void *create_object(void *data,
uint32_t new_id) uint32_t new_id)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_factory *factory = d->factory; struct pw_impl_factory *factory = d->factory;
struct client_session *this; struct client_session *this;
struct pw_impl_client *owner = pw_resource_get_client(owner_resource); struct pw_impl_client *owner = pw_resource_get_client(owner_resource);
struct pw_context *context = pw_impl_client_get_context(owner); struct pw_context *context = pw_impl_client_get_context(owner);
@ -212,8 +212,8 @@ static void *create_object(void *data,
return NULL; return NULL;
} }
static const struct pw_factory_implementation impl_factory = { static const struct pw_impl_factory_implementation impl_factory = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -222,23 +222,23 @@ static void module_destroy(void *data)
struct factory_data *d = data; struct factory_data *d = data;
spa_hook_remove(&d->module_listener); spa_hook_remove(&d->module_listener);
pw_factory_destroy(d->factory); pw_impl_factory_destroy(d->factory);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->factory; struct pw_impl_factory *factory = d->factory;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", module->global->id); snprintf(id, sizeof(id), "%d", module->global->id);
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -252,10 +252,10 @@ static const struct pw_module_events module_events = {
int client_session_factory_init(struct pw_module *module) int client_session_factory_init(struct pw_module *module)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"client-session", "client-session",
PW_TYPE_INTERFACE_ClientSession, PW_TYPE_INTERFACE_ClientSession,
PW_VERSION_CLIENT_SESSION_PROXY, PW_VERSION_CLIENT_SESSION_PROXY,
@ -264,11 +264,11 @@ int client_session_factory_init(struct pw_module *module)
if (factory == NULL) if (factory == NULL)
return -ENOMEM; return -ENOMEM;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->factory = factory; data->factory = factory;
data->module = module; data->module = module;
pw_factory_set_implementation(factory, &impl_factory, data); pw_impl_factory_set_implementation(factory, &impl_factory, data);
pw_module_add_listener(module, &data->module_listener, &module_events, data); pw_module_add_listener(module, &data->module_listener, &module_events, data);

View file

@ -49,7 +49,7 @@ static const struct spa_dict_item module_props[] = {
struct factory_data { struct factory_data {
struct pw_context *context; struct pw_context *context;
struct pw_module *module; struct pw_module *module;
struct pw_factory *this; struct pw_impl_factory *this;
struct spa_hook factory_listener; struct spa_hook factory_listener;
struct spa_hook module_listener; struct spa_hook module_listener;
@ -98,7 +98,7 @@ static void *create_object(void *_data,
goto error_properties; goto error_properties;
pw_properties_setf(properties, PW_KEY_FACTORY_ID, "%d", pw_properties_setf(properties, PW_KEY_FACTORY_ID, "%d",
pw_global_get_id(pw_factory_get_global(data->this))); pw_global_get_id(pw_impl_factory_get_global(data->this)));
client = resource ? pw_resource_get_client(resource) : NULL; client = resource ? pw_resource_get_client(resource) : NULL;
@ -147,8 +147,8 @@ error_exit:
return NULL; return NULL;
} }
static const struct pw_factory_implementation factory_impl = { static const struct pw_impl_factory_implementation factory_impl = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -163,31 +163,31 @@ static void factory_destroy(void *_data)
pw_impl_device_destroy(nd->device); pw_impl_device_destroy(nd->device);
} }
static const struct pw_factory_events factory_events = { static const struct pw_impl_factory_events factory_events = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_EVENTS,
.destroy = factory_destroy, .destroy = factory_destroy,
}; };
static void module_destroy(void *_data) static void module_destroy(void *_data)
{ {
struct factory_data *data = _data; struct factory_data *data = _data;
pw_factory_destroy(data->this); pw_impl_factory_destroy(data->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module))); snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module)));
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -202,10 +202,10 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"spa-device-factory", "spa-device-factory",
PW_TYPE_INTERFACE_Device, PW_TYPE_INTERFACE_Device,
PW_VERSION_DEVICE_PROXY, PW_VERSION_DEVICE_PROXY,
@ -214,14 +214,14 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->module = module; data->module = module;
data->context = context; data->context = context;
spa_list_init(&data->device_list); spa_list_init(&data->device_list);
pw_factory_add_listener(factory, &data->factory_listener, &factory_events, data); pw_impl_factory_add_listener(factory, &data->factory_listener, &factory_events, data);
pw_factory_set_implementation(factory, &factory_impl, data); pw_impl_factory_set_implementation(factory, &factory_impl, data);
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_module_update_properties(module, &SPA_DICT_INIT_ARRAY(module_props)); pw_module_update_properties(module, &SPA_DICT_INIT_ARRAY(module_props));

View file

@ -48,7 +48,7 @@ static const struct spa_dict_item module_props[] = {
struct factory_data { struct factory_data {
struct pw_context *context; struct pw_context *context;
struct pw_factory *this; struct pw_impl_factory *this;
struct pw_module *module; struct pw_module *module;
struct spa_hook factory_listener; struct spa_hook factory_listener;
@ -118,7 +118,7 @@ static void *create_object(void *_data,
client = resource ? pw_resource_get_client(resource) : NULL; client = resource ? pw_resource_get_client(resource) : NULL;
pw_properties_setf(properties, PW_KEY_FACTORY_ID, "%d", pw_properties_setf(properties, PW_KEY_FACTORY_ID, "%d",
pw_global_get_id(pw_factory_get_global(data->this))); pw_global_get_id(pw_impl_factory_get_global(data->this)));
if (client) { if (client) {
pw_properties_setf(properties, PW_KEY_CLIENT_ID, "%d", pw_properties_setf(properties, PW_KEY_CLIENT_ID, "%d",
@ -181,8 +181,8 @@ error_exit:
return NULL; return NULL;
} }
static const struct pw_factory_implementation factory_impl = { static const struct pw_impl_factory_implementation factory_impl = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_IMPLEMENTATION,
.create_object = create_object, .create_object = create_object,
}; };
@ -197,31 +197,31 @@ static void factory_destroy(void *_data)
pw_node_destroy(nd->node); pw_node_destroy(nd->node);
} }
static const struct pw_factory_events factory_events = { static const struct pw_impl_factory_events factory_events = {
PW_VERSION_FACTORY_IMPLEMENTATION, PW_VERSION_IMPL_FACTORY_EVENTS,
.destroy = factory_destroy, .destroy = factory_destroy,
}; };
static void module_destroy(void *_data) static void module_destroy(void *_data)
{ {
struct factory_data *data = _data; struct factory_data *data = _data;
pw_factory_destroy(data->this); pw_impl_factory_destroy(data->this);
} }
static void module_registered(void *data) static void module_registered(void *data)
{ {
struct factory_data *d = data; struct factory_data *d = data;
struct pw_module *module = d->module; struct pw_module *module = d->module;
struct pw_factory *factory = d->this; struct pw_impl_factory *factory = d->this;
struct spa_dict_item items[1]; struct spa_dict_item items[1];
char id[16]; char id[16];
int res; int res;
snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module))); snprintf(id, sizeof(id), "%d", pw_global_get_id(pw_module_get_global(module)));
items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id); items[0] = SPA_DICT_ITEM_INIT(PW_KEY_MODULE_ID, id);
pw_factory_update_properties(factory, &SPA_DICT_INIT(items, 1)); pw_impl_factory_update_properties(factory, &SPA_DICT_INIT(items, 1));
if ((res = pw_factory_register(factory, NULL)) < 0) { if ((res = pw_impl_factory_register(factory, NULL)) < 0) {
pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res)); pw_log_error(NAME" %p: can't register factory: %s", factory, spa_strerror(res));
} }
} }
@ -236,10 +236,10 @@ SPA_EXPORT
int pipewire__module_init(struct pw_module *module, const char *args) int pipewire__module_init(struct pw_module *module, const char *args)
{ {
struct pw_context *context = pw_module_get_context(module); struct pw_context *context = pw_module_get_context(module);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct factory_data *data; struct factory_data *data;
factory = pw_factory_new(context, factory = pw_impl_factory_new(context,
"spa-node-factory", "spa-node-factory",
PW_TYPE_INTERFACE_Node, PW_TYPE_INTERFACE_Node,
PW_VERSION_NODE_PROXY, PW_VERSION_NODE_PROXY,
@ -248,14 +248,14 @@ int pipewire__module_init(struct pw_module *module, const char *args)
if (factory == NULL) if (factory == NULL)
return -errno; return -errno;
data = pw_factory_get_user_data(factory); data = pw_impl_factory_get_user_data(factory);
data->this = factory; data->this = factory;
data->context = context; data->context = context;
data->module = module; data->module = module;
spa_list_init(&data->node_list); spa_list_init(&data->node_list);
pw_factory_add_listener(factory, &data->factory_listener, &factory_events, data); pw_impl_factory_add_listener(factory, &data->factory_listener, &factory_events, data);
pw_factory_set_implementation(factory, &factory_impl, data); pw_impl_factory_set_implementation(factory, &factory_impl, data);
pw_log_debug("module %p: new", module); pw_log_debug("module %p: new", module);
pw_module_add_listener(module, &data->module_listener, &module_events, data); pw_module_add_listener(module, &data->module_listener, &module_events, data);

View file

@ -298,7 +298,7 @@ core_create_object(void *object,
{ {
struct pw_resource *resource = object; struct pw_resource *resource = object;
struct pw_impl_client *client = resource->client; struct pw_impl_client *client = resource->client;
struct pw_factory *factory; struct pw_impl_factory *factory;
void *obj; void *obj;
struct pw_properties *properties; struct pw_properties *properties;
struct pw_context *this = client->context; struct pw_context *this = client->context;
@ -326,7 +326,7 @@ core_create_object(void *object,
properties = NULL; properties = NULL;
/* error will be posted */ /* error will be posted */
obj = pw_factory_create_object(factory, resource, type, version, properties, new_id); obj = pw_impl_factory_create_object(factory, resource, type, version, properties, new_id);
if (obj == NULL) if (obj == NULL)
goto error_create_failed; goto error_create_failed;
@ -1078,10 +1078,10 @@ error:
* \memberof pw_context * \memberof pw_context
*/ */
SPA_EXPORT SPA_EXPORT
struct pw_factory *pw_context_find_factory(struct pw_context *context, struct pw_impl_factory *pw_context_find_factory(struct pw_context *context,
const char *name) const char *name)
{ {
struct pw_factory *factory; struct pw_impl_factory *factory;
spa_list_for_each(factory, &context->factory_list, link) { spa_list_for_each(factory, &context->factory_list, link) {
if (strcmp(factory->info.name, name) == 0) if (strcmp(factory->info.name, name) == 0)

View file

@ -44,6 +44,7 @@ struct pw_context;
struct pw_global; struct pw_global;
struct pw_impl_client; struct pw_impl_client;
struct pw_impl_factory;
#include <pipewire/introspect.h> #include <pipewire/introspect.h>
#include <pipewire/interfaces.h> #include <pipewire/interfaces.h>
@ -145,7 +146,7 @@ struct pw_global *pw_context_find_global(struct pw_context *context, /**< the co
uint32_t id /**< the global id */); uint32_t id /**< the global id */);
/** Find a factory by name */ /** Find a factory by name */
struct pw_factory * struct pw_impl_factory *
pw_context_find_factory(struct pw_context *context /**< the context */, pw_context_find_factory(struct pw_context *context /**< the context */,
const char *name /**< the factory name */); const char *name /**< the factory name */);

View file

@ -38,14 +38,14 @@ struct resource_data {
}; };
SPA_EXPORT SPA_EXPORT
struct pw_factory *pw_factory_new(struct pw_context *context, struct pw_impl_factory *pw_impl_factory_new(struct pw_context *context,
const char *name, const char *name,
uint32_t type, uint32_t type,
uint32_t version, uint32_t version,
struct pw_properties *properties, struct pw_properties *properties,
size_t user_data_size) size_t user_data_size)
{ {
struct pw_factory *this; struct pw_impl_factory *this;
int res; int res;
if (properties == NULL) if (properties == NULL)
@ -83,10 +83,10 @@ error_exit:
} }
SPA_EXPORT SPA_EXPORT
void pw_factory_destroy(struct pw_factory *factory) void pw_impl_factory_destroy(struct pw_impl_factory *factory)
{ {
pw_log_debug(NAME" %p: destroy", factory); pw_log_debug(NAME" %p: destroy", factory);
pw_factory_emit_destroy(factory); pw_impl_factory_emit_destroy(factory);
if (factory->registered) if (factory->registered)
spa_list_remove(&factory->link); spa_list_remove(&factory->link);
@ -96,7 +96,7 @@ void pw_factory_destroy(struct pw_factory *factory)
pw_global_destroy(factory->global); pw_global_destroy(factory->global);
} }
pw_factory_emit_free(factory); pw_impl_factory_emit_free(factory);
pw_log_debug(NAME" %p: free", factory); pw_log_debug(NAME" %p: free", factory);
free((char *)factory->info.name); free((char *)factory->info.name);
@ -120,7 +120,7 @@ static int
global_bind(void *_data, struct pw_impl_client *client, uint32_t permissions, global_bind(void *_data, struct pw_impl_client *client, uint32_t permissions,
uint32_t version, uint32_t id) uint32_t version, uint32_t id)
{ {
struct pw_factory *this = _data; struct pw_impl_factory *this = _data;
struct pw_global *global = this->global; struct pw_global *global = this->global;
struct pw_resource *resource; struct pw_resource *resource;
struct resource_data *data; struct resource_data *data;
@ -150,10 +150,10 @@ error_resource:
static void global_destroy(void *object) static void global_destroy(void *object)
{ {
struct pw_factory *factory = object; struct pw_impl_factory *factory = object;
spa_hook_remove(&factory->global_listener); spa_hook_remove(&factory->global_listener);
factory->global = NULL; factory->global = NULL;
pw_factory_destroy(factory); pw_impl_factory_destroy(factory);
} }
static const struct pw_global_events global_events = { static const struct pw_global_events global_events = {
@ -162,13 +162,13 @@ static const struct pw_global_events global_events = {
}; };
SPA_EXPORT SPA_EXPORT
const struct pw_properties *pw_factory_get_properties(struct pw_factory *factory) const struct pw_properties *pw_impl_factory_get_properties(struct pw_impl_factory *factory)
{ {
return factory->properties; return factory->properties;
} }
SPA_EXPORT SPA_EXPORT
int pw_factory_update_properties(struct pw_factory *factory, const struct spa_dict *dict) int pw_impl_factory_update_properties(struct pw_impl_factory *factory, const struct spa_dict *dict)
{ {
struct pw_resource *resource; struct pw_resource *resource;
int changed; int changed;
@ -191,7 +191,7 @@ int pw_factory_update_properties(struct pw_factory *factory, const struct spa_di
} }
SPA_EXPORT SPA_EXPORT
int pw_factory_register(struct pw_factory *factory, int pw_impl_factory_register(struct pw_impl_factory *factory,
struct pw_properties *properties) struct pw_properties *properties)
{ {
struct pw_context *context = factory->context; struct pw_context *context = factory->context;
@ -231,7 +231,7 @@ int pw_factory_register(struct pw_factory *factory,
pw_properties_setf(factory->properties, PW_KEY_OBJECT_ID, "%d", factory->info.id); pw_properties_setf(factory->properties, PW_KEY_OBJECT_ID, "%d", factory->info.id);
factory->info.props = &factory->properties->dict; factory->info.props = &factory->properties->dict;
pw_factory_emit_initialized(factory); pw_impl_factory_emit_initialized(factory);
pw_global_add_listener(factory->global, &factory->global_listener, &global_events, factory); pw_global_add_listener(factory->global, &factory->global_listener, &global_events, factory);
pw_global_register(factory->global); pw_global_register(factory->global);
@ -245,36 +245,36 @@ error_existed:
} }
SPA_EXPORT SPA_EXPORT
void *pw_factory_get_user_data(struct pw_factory *factory) void *pw_impl_factory_get_user_data(struct pw_impl_factory *factory)
{ {
return factory->user_data; return factory->user_data;
} }
SPA_EXPORT SPA_EXPORT
struct pw_global *pw_factory_get_global(struct pw_factory *factory) struct pw_global *pw_impl_factory_get_global(struct pw_impl_factory *factory)
{ {
return factory->global; return factory->global;
} }
SPA_EXPORT SPA_EXPORT
void pw_factory_add_listener(struct pw_factory *factory, void pw_impl_factory_add_listener(struct pw_impl_factory *factory,
struct spa_hook *listener, struct spa_hook *listener,
const struct pw_factory_events *events, const struct pw_impl_factory_events *events,
void *data) void *data)
{ {
spa_hook_list_append(&factory->listener_list, listener, events, data); spa_hook_list_append(&factory->listener_list, listener, events, data);
} }
SPA_EXPORT SPA_EXPORT
void pw_factory_set_implementation(struct pw_factory *factory, void pw_impl_factory_set_implementation(struct pw_impl_factory *factory,
const struct pw_factory_implementation *implementation, const struct pw_impl_factory_implementation *implementation,
void *data) void *data)
{ {
factory->impl = SPA_CALLBACKS_INIT(implementation, data); factory->impl = SPA_CALLBACKS_INIT(implementation, data);
} }
SPA_EXPORT SPA_EXPORT
void *pw_factory_create_object(struct pw_factory *factory, void *pw_impl_factory_create_object(struct pw_impl_factory *factory,
struct pw_resource *resource, struct pw_resource *resource,
uint32_t type, uint32_t type,
uint32_t version, uint32_t version,
@ -283,7 +283,7 @@ void *pw_factory_create_object(struct pw_factory *factory,
{ {
void *res = NULL; void *res = NULL;
spa_callbacks_call_res(&factory->impl, spa_callbacks_call_res(&factory->impl,
struct pw_factory_implementation, struct pw_impl_factory_implementation,
res, create_object, 0, res, create_object, 0,
resource, type, version, properties, new_id); resource, type, version, properties, new_id);
return res; return res;

View file

@ -22,20 +22,20 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
#ifndef PIPEWIRE_FACTORY_H #ifndef PIPEWIRE_IMPL_FACTORY_H
#define PIPEWIRE_FACTORY_H #define PIPEWIRE_IMPL_FACTORY_H
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/** \class pw_factory /** \class pw_impl_factory
* *
* \brief PipeWire factory interface. * \brief PipeWire factory interface.
* *
* The factory is used to make objects on demand. * The factory is used to make objects on demand.
*/ */
struct pw_factory; struct pw_impl_factory;
#include <pipewire/context.h> #include <pipewire/context.h>
#include <pipewire/impl-client.h> #include <pipewire/impl-client.h>
@ -43,9 +43,9 @@ struct pw_factory;
#include <pipewire/properties.h> #include <pipewire/properties.h>
#include <pipewire/resource.h> #include <pipewire/resource.h>
/** Factory events, listen to them with \ref pw_factory_add_listener */ /** Factory events, listen to them with \ref pw_impl_factory_add_listener */
struct pw_factory_events { struct pw_impl_factory_events {
#define PW_VERSION_FACTORY_EVENTS 0 #define PW_VERSION_IMPL_FACTORY_EVENTS 0
uint32_t version; uint32_t version;
/** the factory is destroyed */ /** the factory is destroyed */
@ -56,8 +56,8 @@ struct pw_factory_events {
void (*initialized) (void *data); void (*initialized) (void *data);
}; };
struct pw_factory_implementation { struct pw_impl_factory_implementation {
#define PW_VERSION_FACTORY_IMPLEMENTATION 0 #define PW_VERSION_IMPL_FACTORY_IMPLEMENTATION 0
uint32_t version; uint32_t version;
/** The function to create an object from this factory */ /** The function to create an object from this factory */
@ -69,7 +69,7 @@ struct pw_factory_implementation {
uint32_t new_id); uint32_t new_id);
}; };
struct pw_factory *pw_factory_new(struct pw_context *context, struct pw_impl_factory *pw_impl_factory_new(struct pw_context *context,
const char *name, const char *name,
uint32_t type, uint32_t type,
uint32_t version, uint32_t version,
@ -77,32 +77,32 @@ struct pw_factory *pw_factory_new(struct pw_context *context,
size_t user_data_size); size_t user_data_size);
/** Get the factory properties */ /** Get the factory properties */
const struct pw_properties *pw_factory_get_properties(struct pw_factory *factory); const struct pw_properties *pw_impl_factory_get_properties(struct pw_impl_factory *factory);
/** Update the factory properties */ /** Update the factory properties */
int pw_factory_update_properties(struct pw_factory *factory, const struct spa_dict *dict); int pw_impl_factory_update_properties(struct pw_impl_factory *factory, const struct spa_dict *dict);
int pw_factory_register(struct pw_factory *factory, int pw_impl_factory_register(struct pw_impl_factory *factory,
struct pw_properties *properties); struct pw_properties *properties);
void pw_factory_destroy(struct pw_factory *factory); void pw_impl_factory_destroy(struct pw_impl_factory *factory);
void *pw_factory_get_user_data(struct pw_factory *factory); void *pw_impl_factory_get_user_data(struct pw_impl_factory *factory);
/** Get the global of this factory */ /** Get the global of this factory */
struct pw_global *pw_factory_get_global(struct pw_factory *factory); struct pw_global *pw_impl_factory_get_global(struct pw_impl_factory *factory);
/** Add an event listener */ /** Add an event listener */
void pw_factory_add_listener(struct pw_factory *factory, void pw_impl_factory_add_listener(struct pw_impl_factory *factory,
struct spa_hook *listener, struct spa_hook *listener,
const struct pw_factory_events *events, const struct pw_impl_factory_events *events,
void *data); void *data);
void pw_factory_set_implementation(struct pw_factory *factory, void pw_impl_factory_set_implementation(struct pw_impl_factory *factory,
const struct pw_factory_implementation *implementation, const struct pw_impl_factory_implementation *implementation,
void *data); void *data);
void *pw_factory_create_object(struct pw_factory *factory, void *pw_impl_factory_create_object(struct pw_impl_factory *factory,
struct pw_resource *resource, struct pw_resource *resource,
uint32_t type, uint32_t type,
uint32_t version, uint32_t version,
@ -113,4 +113,4 @@ void *pw_factory_create_object(struct pw_factory *factory,
} }
#endif #endif
#endif /* PIPEWIRE_FACTORY_H */ #endif /* PIPEWIRE_IMPL_FACTORY_H */

View file

@ -825,13 +825,13 @@ struct pw_filter {
struct spa_list controls; struct spa_list controls;
}; };
#define pw_factory_emit(s,m,v,...) spa_hook_list_call(&s->listener_list, struct pw_factory_events, m, v, ##__VA_ARGS__) #define pw_impl_factory_emit(s,m,v,...) spa_hook_list_call(&s->listener_list, struct pw_impl_factory_events, m, v, ##__VA_ARGS__)
#define pw_factory_emit_destroy(s) pw_factory_emit(s, destroy, 0) #define pw_impl_factory_emit_destroy(s) pw_impl_factory_emit(s, destroy, 0)
#define pw_factory_emit_free(s) pw_factory_emit(s, free, 0) #define pw_impl_factory_emit_free(s) pw_impl_factory_emit(s, free, 0)
#define pw_factory_emit_initialized(s) pw_factory_emit(s, initialized, 0) #define pw_impl_factory_emit_initialized(s) pw_impl_factory_emit(s, initialized, 0)
struct pw_factory { struct pw_impl_factory {
struct pw_context *context; /**< the context */ struct pw_context *context; /**< the context */
struct spa_list link; /**< link in context node_factory_list */ struct spa_list link; /**< link in context node_factory_list */
struct pw_global *global; /**< global for this factory */ struct pw_global *global; /**< global for this factory */

View file

@ -1318,7 +1318,7 @@ pw_stream_connect(struct pw_stream *stream,
uint32_t n_params) uint32_t n_params)
{ {
struct stream *impl = SPA_CONTAINER_OF(stream, struct stream, this); struct stream *impl = SPA_CONTAINER_OF(stream, struct stream, this);
struct pw_factory *factory; struct pw_impl_factory *factory;
struct pw_properties *props; struct pw_properties *props;
struct pw_node *slave; struct pw_node *slave;
const char *str; const char *str;
@ -1426,7 +1426,7 @@ pw_stream_connect(struct pw_stream *stream,
goto error_node; goto error_node;
} }
pw_properties_setf(props, "adapt.slave.node", "pointer:%p", slave); pw_properties_setf(props, "adapt.slave.node", "pointer:%p", slave);
impl->node = pw_factory_create_object(factory, impl->node = pw_impl_factory_create_object(factory,
NULL, NULL,
PW_TYPE_INTERFACE_Node, PW_TYPE_INTERFACE_Node,
PW_VERSION_NODE_PROXY, PW_VERSION_NODE_PROXY,