]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gsocket.h
*** empty log message ***
[wxWidgets.git] / include / wx / gsocket.h
index 19e89e34ed8a8a416800f56ec2513e3e839625aa..1c66aa45847a8225f702ad100f47998aad97394a 100644 (file)
@@ -8,12 +8,15 @@
 #ifndef __GSOCKET_H
 #define __GSOCKET_H
 
 #ifndef __GSOCKET_H
 #define __GSOCKET_H
 
+#include "wx/setup.h"
+
+#if wxUSE_SOCKETS
+
+#include <stddef.h>
 #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 +49,10 @@ typedef enum {
   GSOCK_INVADDR,
   GSOCK_INVSOCK,
   GSOCK_NOHOST,
   GSOCK_INVADDR,
   GSOCK_INVSOCK,
   GSOCK_NOHOST,
-  GSOCK_INVPORT
+  GSOCK_INVPORT,
+  GSOCK_WOULDBLOCK,
+  GSOCK_TIMEDOUT,
+  GSOCK_MEMERR
 } GSocketError;
 
 typedef enum {
 } GSocketError;
 
 typedef enum {
@@ -66,7 +72,7 @@ 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
                                 char *cdata);
 
 #ifdef __cplusplus
@@ -76,7 +82,7 @@ extern "C" {
 /* Global initialisers */
 
 /* GSocket_Init() must be called at the beginning */
 /* Global initialisers */
 
 /* GSocket_Init() must be called at the beginning */
-void GSocket_Init();
+bool GSocket_Init();
 /* GSocket_Cleanup() must be called at the ending */
 void GSocket_Cleanup();
 
 /* GSocket_Cleanup() must be called at the ending */
 void GSocket_Cleanup();
 
@@ -102,7 +108,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.
 */
@@ -134,13 +140,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.
@@ -161,7 +173,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
@@ -169,14 +181,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 */
 
@@ -222,7 +234,11 @@ void GSocket_DoEvent(unsigned long evt_id);
 
 #ifdef __cplusplus
 };
 
 #ifdef __cplusplus
 };
+#endif /* __cplusplus */
+
+
 #endif
 #endif
+    /* wxUSE_SOCKETS */
 
 #endif
 
 #endif
- /* __GSOCKET_H */
   /* __GSOCKET_H */