X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/294a09aa8c034be9d00da145c4834174d5560214..43c42c18d36c703a88b1b7b697bac27fe5608eca:/include/wx/socket.h diff --git a/include/wx/socket.h b/include/wx/socket.h index 5181d3b475..0d0a0d7b5c 100644 --- a/include/wx/socket.h +++ b/include/wx/socket.h @@ -30,6 +30,16 @@ class wxSocketImpl; // Types and constants // ------------------------------------------------------------------------ +// Define the type of native sockets. +#if defined(__WINDOWS__) + // Although socket descriptors are still 32 bit values, even under Win64, + // the socket type is 64 bit there. + typedef wxUIntPtr wxSOCKET_T; +#else + typedef int wxSOCKET_T; +#endif + + // Types of different socket notifications or events. // // NB: the values here should be consecutive and start with 0 as they are @@ -71,17 +81,17 @@ enum wxSocketError // socket options/flags bit masks enum { - wxSOCKET_NONE = 0, - wxSOCKET_NOWAIT = 1, - wxSOCKET_WAITALL = 2, - wxSOCKET_BLOCK = 4, - wxSOCKET_REUSEADDR = 8, - wxSOCKET_BROADCAST = 16, - wxSOCKET_NOBIND = 32, - wxSOCKET_NOWAIT_READ = 64, - wxSOCKET_WAITALL_READ = 128, - wxSOCKET_NOWAIT_WRITE = 256, - wxSOCKET_WAITALL_WRITE = 512 + wxSOCKET_NONE = 0x0000, + wxSOCKET_NOWAIT_READ = 0x0001, + wxSOCKET_NOWAIT_WRITE = 0x0002, + wxSOCKET_NOWAIT = wxSOCKET_NOWAIT_READ | wxSOCKET_NOWAIT_WRITE, + wxSOCKET_WAITALL_READ = 0x0004, + wxSOCKET_WAITALL_WRITE = 0x0008, + wxSOCKET_WAITALL = wxSOCKET_WAITALL_READ | wxSOCKET_WAITALL_WRITE, + wxSOCKET_BLOCK = 0x0010, + wxSOCKET_REUSEADDR = 0x0020, + wxSOCKET_BROADCAST = 0x0040, + wxSOCKET_NOBIND = 0x0080 }; typedef int wxSocketFlags; @@ -187,6 +197,9 @@ public: void SetNotify(wxSocketEventFlags flags); void Notify(bool notify); + // Get the underlying socket descriptor. + wxSOCKET_T GetSocket() const; + // initialize/shutdown the sockets (done automatically so there is no need // to call these functions usually) //