Import GInitable, GSocket and dependencies from gnio

This adds:
GInitable - failable object constructor interface
GAsyncInitable - async failable object constructor interface
GSocket - Platform independent lowlevel berkely socket style object
GSocketControlMessage - For passing control messages over GSocket
GUnixFDMessage - unix fd passing socket control message

Some changes were done during the import from gnio to make things
work in glib. For instance, types were moved to other headers, header
file boiler plate were updated to glib style and gio.symbols stuff
was added.
This commit is contained in:
Alexander Larsson
2009-05-14 15:26:37 +02:00
parent 33c00e5c33
commit 145cec3c93
17 changed files with 4833 additions and 1 deletions

View File

@@ -34,6 +34,7 @@ G_BEGIN_DECLS
typedef struct _GAppLaunchContext GAppLaunchContext;
typedef struct _GAppInfo GAppInfo; /* Dummy typedef */
typedef struct _GAsyncResult GAsyncResult; /* Dummy typedef */
typedef struct _GAsyncInitable GAsyncInitable;
typedef struct _GBufferedInputStream GBufferedInputStream;
typedef struct _GBufferedOutputStream GBufferedOutputStream;
typedef struct _GCancellable GCancellable;
@@ -79,6 +80,7 @@ typedef struct _GIcon GIcon; /* Dummy typedef */
typedef struct _GInetAddress GInetAddress;
typedef struct _GInetSocketAddress GInetSocketAddress;
typedef struct _GInputStream GInputStream;
typedef struct _GInitable GInitable;
typedef struct _GIOModule GIOModule;
typedef struct _GIOExtensionPoint GIOExtensionPoint;
typedef struct _GIOExtension GIOExtension;
@@ -107,6 +109,23 @@ typedef struct _GIOStream GIOStream;
typedef struct _GResolver GResolver;
typedef struct _GSeekable GSeekable;
typedef struct _GSimpleAsyncResult GSimpleAsyncResult;
/**
* GSocket:
*
* A lowlevel network socket object.
*
* Since: 2.22
**/
typedef struct _GSocket GSocket;
/**
* GSocketControlMessage:
*
* Base class for socket-type specific control messages that can be sent and
* received over #GSocket.
**/
typedef struct _GSocketControlMessage GSocketControlMessage;
typedef struct _GSocketAddress GSocketAddress;
typedef struct _GSocketAddressEnumerator GSocketAddressEnumerator;
typedef struct _GSocketConnectable GSocketConnectable;
@@ -202,6 +221,46 @@ typedef void (*GSimpleAsyncThreadFunc) (GSimpleAsyncResult *res,
GObject *object,
GCancellable *cancellable);
/**
* GSocketSourceFunc:
* @user_data: data passed in by the user.
* @condition: the current condition at the source fired.
*
* This is the function type of the callback used for the #GSource
* returned by g_socket_create_source().
*
* Since: 2.22
*/
typedef gboolean (*GSocketSourceFunc) (gpointer user_data,
GIOCondition condition);
/**
* GInputVector:
*
* Structure used for scatter/gather data input.
*
* Since: 2.22
*/
typedef struct
{
gpointer buffer;
gsize size;
} GInputVector;
/**
* GOutputVector:
*
* Structure used for scatter/gather data output.
*
* Since: 2.22
*/
typedef struct
{
gconstpointer buffer;
gsize size;
} GOutputVector;
G_END_DECLS
#endif /* __GIO_TYPES_H__ */