summaryrefslogtreecommitdiffstats
path: root/connection.h
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2008-10-08 12:48:46 -0400
committerKristian Høgsberg <krh@redhat.com>2008-11-06 10:51:58 -0500
commit680f1c702515c3ddcd4d819ee840a92787d657ae (patch)
tree27adacb66cc4de07bb390a66eac69670a89e9258 /connection.h
parentc5089878cb6972ccb114ca83c118cee595128e91 (diff)
downloadwayland-680f1c702515c3ddcd4d819ee840a92787d657ae.tar.gz
wayland-680f1c702515c3ddcd4d819ee840a92787d657ae.tar.xz
wayland-680f1c702515c3ddcd4d819ee840a92787d657ae.zip
Split out connection io buffer logic.
Diffstat (limited to 'connection.h')
-rw-r--r--connection.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/connection.h b/connection.h
new file mode 100644
index 0000000..0e75e2c
--- /dev/null
+++ b/connection.h
@@ -0,0 +1,21 @@
+#ifndef _CONNECTION_H_
+#define _CONNECTION_H_
+
+struct wl_connection;
+
+#define WL_CONNECTION_READABLE 0x01
+#define WL_CONNECTION_WRITABLE 0x02
+
+typedef int (*wl_connection_update_func_t)(struct wl_connection *connection,
+ uint32_t mask, void *data);
+
+struct wl_connection *wl_connection_create(int fd,
+ wl_connection_update_func_t update,
+ void *data);
+void wl_connection_destroy(struct wl_connection *connection);
+void wl_connection_copy(struct wl_connection *connection, void *data, size_t size);
+void wl_connection_consume(struct wl_connection *connection, size_t size);
+int wl_connection_data(struct wl_connection *connection, uint32_t mask);
+void wl_connection_write(struct wl_connection *connection, const void *data, size_t count);
+
+#endif