]> git.sur5r.net Git - i3/i3/blobdiff - include/ipc.h
i3: Replace loglevels by a global debug logging
[i3/i3] / include / ipc.h
index b798b5ff5444c51922460dd3f13d49756f511467..af80fa4bd18116bc071cf87f360bd577d850bc8c 100644 (file)
@@ -1,21 +1,27 @@
 /*
- * vim:ts=8:expandtab
+ * vim:ts=4:sw=4:expandtab
  *
  * i3 - an improved dynamic tiling window manager
+ * © 2009-2011 Michael Stapelberg and contributors (see also: LICENSE)
  *
- * © 2009-2010 Michael Stapelberg and contributors
- *
- * See file LICENSE for license information.
+ * ipc.c: UNIX domain socket IPC (initialization, client handling, protocol).
  *
  */
-
 #ifndef _IPC_H
 #define _IPC_H
 
 #include <ev.h>
+#include <stdbool.h>
+#include <yajl/yajl_gen.h>
+#include <yajl/yajl_parse.h>
+
+#include "data.h"
+#include "tree.h"
 
 #include "i3/ipc.h"
 
+extern char *current_socketpath;
+
 typedef struct ipc_client {
         int fd;
 
@@ -67,5 +73,13 @@ int ipc_create_socket(const char *filename);
  */
 void ipc_send_event(const char *event, uint32_t message_type, const char *payload);
 
+/**
+ * Calls shutdown() on each socket and closes it. This function to be called
+ * when exiting or restarting only!
+ *
+ */
+void ipc_shutdown(void);
+
+void dump_node(yajl_gen gen, Con *con, bool inplace_restart);
 
 #endif