X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a737331db68b754c8bf31fa0a15f6d1f207b40bf..27a9bd487b5ee30238e35ff4962bf70237cfc2c0:/include/wx/sckint.h diff --git a/include/wx/sckint.h b/include/wx/sckint.h index e90dfb939c..3fec426a7a 100644 --- a/include/wx/sckint.h +++ b/include/wx/sckint.h @@ -61,6 +61,8 @@ class SockRequest }; class wxSocketInternal; + +#if wxUSE_THREADS class SocketWaiter: public wxThread { public: SocketWaiter(wxSocketBase *socket, wxSocketInternal *internal); @@ -80,7 +82,11 @@ class SocketWaiter: public wxThread { int m_fd; }; -class SocketRequester: public wxThread { +class SocketRequester +#if wxUSE_THREADS + : public wxThread +#endif + { public: SocketRequester(wxSocketBase *socket, wxSocketInternal *internal); ~SocketRequester(); @@ -100,6 +106,8 @@ class SocketRequester: public wxThread { wxSocketInternal *m_internal; int m_fd; }; +#endif + // wxUSE_THREADS class wxSocketInternal { public: @@ -114,13 +122,12 @@ class wxSocketInternal { void ReleaseFD(); int GetFD() { return m_fd; } + void SetFD(int fd) { m_fd = fd; } - void InitializeSocket(); - void FinalizeSocket(); - void PauseSocket(); - void ResumeSocket(); - void EnableWaiter(); - void DisableWaiter(); + void ResumeWaiter(); + void StopWaiter(); + void ResumeRequester(); + void StopRequester(); void QueueRequest(SockRequest *request, bool async); void WaitForEnd(SockRequest *request); @@ -128,13 +135,16 @@ class wxSocketInternal { SockRequest *WaitForReq(); void EndRequest(SockRequest *req); public: - wxMutex m_socket_locker, m_fd_locker, m_request_locker; - wxCondition m_socket_cond; wxSocketBase *m_socket; +#if wxUSE_THREADS + wxMutex m_socket_locker, m_fd_locker, m_request_locker, m_end_requester; + wxCondition m_socket_cond; SocketWaiter *m_thread_waiter; +#endif SocketRequester *m_thread_requester; wxList m_requests; int m_fd; + bool m_invalid_requester; }; #endif