Make interface types a string

This is more in line with wayland and it allows us to create new
interfaces in modules without having to add anything to the type
enum. It also removes some lookups to map type_id to readable
name in debug.
This commit is contained in:
Wim Taymans 2019-12-19 13:15:10 +01:00
parent 9657486a81
commit f391353c7f
123 changed files with 791 additions and 1251 deletions

View file

@ -46,7 +46,7 @@ struct sm_object_events {
struct sm_object {
uint32_t id;
uint32_t type;
const char *type;
struct spa_list link;
struct sm_media_session *session;
@ -226,14 +226,14 @@ struct sm_object *sm_media_session_find_object(struct sm_media_session *sess, ui
int sm_media_session_schedule_rescan(struct sm_media_session *sess);
struct pw_proxy *sm_media_session_export(struct sm_media_session *sess,
uint32_t type, const struct spa_dict *props,
const char *type, const struct spa_dict *props,
void *object, size_t user_data_size);
struct sm_device *sm_media_session_export_device(struct sm_media_session *sess,
const struct spa_dict *props, struct spa_device *device);
struct pw_proxy *sm_media_session_create_object(struct sm_media_session *sess,
const char *factory_name, uint32_t type, uint32_t version,
const char *factory_name, const char *type, uint32_t version,
const struct spa_dict *props, size_t user_data_size);
struct sm_node *sm_media_session_create_node(struct sm_media_session *sess,