]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gsocket.h
converted to 16 colors
[wxWidgets.git] / include / wx / gsocket.h
index 1de9fa618978a1a74203c39b0665026cb61a5f71..7190696fd081ba9b4b623d10e0005f51853533fe 100644 (file)
@@ -8,12 +8,14 @@
 #ifndef __GSOCKET_H
 #define __GSOCKET_H
 
 #ifndef __GSOCKET_H
 #define __GSOCKET_H
 
+#include "wx/setup.h"
+
+#if wxUSE_SOCKETS
+
 #include <sys/types.h>
 
 #if !defined(__cplusplus)
 #include <sys/types.h>
 
 #if !defined(__cplusplus)
-
 typedef int bool;
 typedef int bool;
-
 #endif
 
 #ifndef TRUE
 #endif
 
 #ifndef TRUE
@@ -46,7 +48,9 @@ typedef enum {
   GSOCK_INVADDR,
   GSOCK_INVSOCK,
   GSOCK_NOHOST,
   GSOCK_INVADDR,
   GSOCK_INVSOCK,
   GSOCK_NOHOST,
-  GSOCK_INVPORT
+  GSOCK_INVPORT,
+  GSOCK_TRYAGAIN,
+  GSOCK_MEMERR
 } GSocketError;
 
 typedef enum {
 } GSocketError;
 
 typedef enum {
@@ -66,13 +70,20 @@ enum {
 
 typedef int GSocketEventFlags;
 
 
 typedef int GSocketEventFlags;
 
-typedef void (*GSocketFallback)(GSocket *socket, GSocketEvent event,
+typedef void (*GSocketCallback)(GSocket *socket, GSocketEvent event,
                                 char *cdata);
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
                                 char *cdata);
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+/* Global initialisers */
+
+/* GSocket_Init() must be called at the beginning */
+bool GSocket_Init();
+/* GSocket_Cleanup() must be called at the ending */
+void GSocket_Cleanup();
+
 /* Constructors / Destructors */
 
 GSocket *GSocket_new();
 /* Constructors / Destructors */
 
 GSocket *GSocket_new();
@@ -95,7 +106,7 @@ GSocketError GSocket_SetNonOriented(GSocket *socket);
 /* Server specific parts */
 
 /*
 /* Server specific parts */
 
 /*
-  GSocket_SetServer() setup the socket as a server. It uses the "Local" field
+  GSocket_SetServer() setups the socket as a server. It uses the "Local" field
   of GSocket. "Local" must be set by GSocket_SetLocal() before
   GSocket_SetServer() is called. In the other case, it returns GSOCK_INVADDR.
 */
   of GSocket. "Local" must be set by GSocket_SetLocal() before
   GSocket_SetServer() is called. In the other case, it returns GSOCK_INVADDR.
 */
@@ -127,13 +138,19 @@ int GSocket_Write(GSocket *socket, const char *buffer,
                   int size);
 bool GSocket_DataAvailable(GSocket *socket);
 
                   int size);
 bool GSocket_DataAvailable(GSocket *socket);
 
-/* Flags */
+/* Flags/Parameters */
+
+/*
+  GSocket_SetTimeout() sets the timeout for reading and writing IO call. Time
+  is expressed in milliseconds.
+ */
+void GSocket_SetTimeout(GSocket *socket, unsigned long millisec);
 
 /*
   GSocket_SetBlocking() puts the socket in non-blocking mode. This is useful
   if we don't want to wait.
 */
 
 /*
   GSocket_SetBlocking() puts the socket in non-blocking mode. This is useful
   if we don't want to wait.
 */
-void GSocket_SetBlocking(GSocket *socket, bool block);
+void GSocket_SetNonBlocking(GSocket *socket, bool non_block);
 
 /*
   GSocket_GetError() returns the last error occured on the socket stream.
 
 /*
   GSocket_GetError() returns the last error occured on the socket stream.
@@ -154,7 +171,7 @@ GSocketError GSocket_GetError(GSocket *socket);
              Server socket -> a client request a connection
    LOST: the connection is lost
 
              Server socket -> a client request a connection
    LOST: the connection is lost
 
-   SetFallback accepts a combination of these flags so a same callback can
+   SetCallback accepts a combination of these flags so a same callback can
    receive different events.
 
    An event is generated only once and its state is reseted when the relative
    receive different events.
 
    An event is generated only once and its state is reseted when the relative
@@ -162,14 +179,14 @@ GSocketError GSocket_GetError(GSocket *socket);
    For example: INPUT -> GSocket_Read()
                 CONNECTION -> GSocket_Accept()
 */
    For example: INPUT -> GSocket_Read()
                 CONNECTION -> GSocket_Accept()
 */
-void GSocket_SetFallback(GSocket *socket, GSocketEventFlags event,
-                         GSocketFallback fallback, char *cdata);
+void GSocket_SetCallback(GSocket *socket, GSocketEventFlags event,
+                         GSocketCallback fallback, char *cdata);
 
 /*
 
 /*
-  UnsetFallback will disables all fallbacks specified by "event".
+  UnsetCallback will disables all fallbacks specified by "event".
   NOTE: event may be a combination of flags
 */
   NOTE: event may be a combination of flags
 */
-void GSocket_UnsetFallback(GSocket *socket, GSocketEventFlags event);
+void GSocket_UnsetCallback(GSocket *socket, GSocketEventFlags event);
 
 /* GAddress */
 
 
 /* GAddress */
 
@@ -215,7 +232,11 @@ void GSocket_DoEvent(unsigned long evt_id);
 
 #ifdef __cplusplus
 };
 
 #ifdef __cplusplus
 };
+#endif /* __cplusplus */
+
+
 #endif
 #endif
+    /* wxUSE_SOCKETS */
 
 #endif
 
 #endif
- /* __GSOCKET_H */
   /* __GSOCKET_H */