[PATCH wayland] client: add wl_proxy_get_class()

Pekka Paalanen ppaalanen at gmail.com
Tue Feb 26 05:19:44 PST 2013


This is a useful shorthand for client application debugging macros,
since you can ask the object class from the object itself.

Signed-off-by: Pekka Paalanen <ppaalanen at gmail.com>
---
 src/wayland-client.c | 12 ++++++++++++
 src/wayland-client.h |  1 +
 2 files changed, 13 insertions(+)

diff --git a/src/wayland-client.c b/src/wayland-client.c
index 785f4ee..935e5f1 100644
--- a/src/wayland-client.c
+++ b/src/wayland-client.c
@@ -1127,6 +1127,18 @@ wl_proxy_get_id(struct wl_proxy *proxy)
 	return proxy->object.id;
 }
 
+/** Get the interface name (class) of a proxy object
+ *
+ * \param proxy The proxy object
+ * \return The interface name of the object associated with the proxy
+ *
+ * \memberof wl_proxy
+ */
+WL_EXPORT const char *
+wl_proxy_get_class(struct wl_proxy *proxy)
+{
+	return proxy->object.interface->name;
+}
 
 /** Assign a proxy to an event queue
  *
diff --git a/src/wayland-client.h b/src/wayland-client.h
index 8b1fd0d..578fa7e 100644
--- a/src/wayland-client.h
+++ b/src/wayland-client.h
@@ -131,6 +131,7 @@ int wl_proxy_add_listener(struct wl_proxy *proxy,
 void wl_proxy_set_user_data(struct wl_proxy *proxy, void *user_data);
 void *wl_proxy_get_user_data(struct wl_proxy *proxy);
 uint32_t wl_proxy_get_id(struct wl_proxy *proxy);
+const char *wl_proxy_get_class(struct wl_proxy *proxy);
 void wl_proxy_set_queue(struct wl_proxy *proxy, struct wl_event_queue *queue);
 
 #include "wayland-client-protocol.h"
-- 
1.7.12.4



More information about the wayland-devel mailing list