summaryrefslogtreecommitdiffstats
path: root/common/glib-ectomy.h
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2005-11-01 16:56:45 +0000
committerMarcel Holtmann <marcel@holtmann.org>2005-11-01 16:56:45 +0000
commitfe8f6f45a86efb2d356c3084b7991b90d8f319ea (patch)
tree92bdc34e409c5e85b76525688a89a59d8b22314e /common/glib-ectomy.h
parent0443fc32d957c04964d6b875fbb203980b57775a (diff)
Move glib-ectomy.[ch] into the common directory
Diffstat (limited to 'common/glib-ectomy.h')
-rw-r--r--common/glib-ectomy.h92
1 files changed, 92 insertions, 0 deletions
diff --git a/common/glib-ectomy.h b/common/glib-ectomy.h
new file mode 100644
index 00000000..c507e3c7
--- /dev/null
+++ b/common/glib-ectomy.h
@@ -0,0 +1,92 @@
+#ifndef __GLIB_ECTOMY_H
+#define __GLIB_ECTOMY_H
+
+#include <stdlib.h>
+#include <sys/poll.h>
+
+typedef char gchar;
+typedef short gshort;
+typedef long glong;
+typedef int gint;
+typedef gint gboolean;
+
+typedef unsigned char guchar;
+typedef unsigned short gushort;
+typedef unsigned long gulong;
+typedef unsigned int guint;
+
+typedef float gfloat;
+typedef double gdouble;
+
+typedef void * gpointer;
+typedef const void * gconstpointer;
+
+typedef size_t gsize;
+typedef ssize_t gssize;
+
+#ifndef SSIZE_MAX
+#define SSIZE_MAX INT_MAX
+#endif
+
+typedef struct _GIOChannel {
+ int fd;
+} GIOChannel;
+
+typedef struct _GMainContext {
+ int dummy;
+} GMainContext;
+
+typedef struct _GMainLoop {
+ int bail;
+} GMainLoop;
+
+typedef enum {
+ G_IO_ERROR_NONE,
+ G_IO_ERROR_AGAIN,
+ G_IO_ERROR_INVAL,
+ G_IO_ERROR_UNKNOWN
+} GIOError;
+
+typedef enum {
+ G_IO_STATUS_ERROR = -1,
+ G_IO_STATUS_NORMAL = 0,
+ G_IO_STATUS_EOF = 1,
+ G_IO_STATUS_AGAIN = 2
+} GIOStatus;
+
+#ifndef FALSE
+#define FALSE (0)
+#endif
+
+#ifndef TRUE
+#define TRUE (!FALSE)
+#endif
+
+typedef enum {
+ G_IO_IN = POLLIN,
+ G_IO_OUT = POLLOUT,
+ G_IO_PRI = POLLPRI,
+ G_IO_ERR = POLLERR,
+ G_IO_HUP = POLLHUP,
+ G_IO_NVAL = POLLNVAL
+} GIOCondition;
+
+typedef gboolean (*GIOFunc) (GIOChannel *source, GIOCondition condition, gpointer data);
+
+GIOError g_io_channel_read(GIOChannel *channel, gchar *buf, gsize count, gsize *bytes_read);
+void g_io_channel_close(GIOChannel *channel);
+
+GIOChannel *g_io_channel_unix_new(int fd);
+gint g_io_channel_unix_get_fd(GIOChannel *channel);
+guint g_io_add_watch(GIOChannel *channel, GIOCondition condition, GIOFunc func, gpointer user_data);
+void g_io_remove_watch(guint id);
+
+GMainLoop *g_main_loop_new(GMainContext *context, gboolean is_running);
+void g_main_loop_run(GMainLoop *loop);
+void g_main_loop_quit(GMainLoop *loop);
+
+#define g_main_new(is_running) g_main_loop_new(NULL, is_running);
+#define g_main_run(loop) g_main_loop_run(loop)
+#define g_main_quit(loop) g_main_loop_quit(loop)
+
+#endif /* __GLIB_ECTOMY_H */