- // Setup external callback
- wxSockCbk Callback(wxSockCbk cbk_);
- char *CallbackData(char *data);
-
- // Setup event handler
- void SetEventHandler(wxEvtHandler& evt_hdlr, int id = -1);
-
- // Method called when it happens something on the socket
- void SetNotify(wxRequestNotify flags);
- virtual void OnRequest(wxRequestEvent req_evt);
+ // addresses
+ virtual bool GetLocal(wxSockAddress& addr_man) const;
+ virtual bool GetPeer(wxSockAddress& addr_man) const;
+ virtual bool SetLocal(wxSockAddress& local);
+
+ // base IO
+ virtual bool Close();
+ wxSocketBase& Discard();
+ wxSocketBase& Peek(void* buffer, wxUint32 nbytes);
+ wxSocketBase& Read(void* buffer, wxUint32 nbytes);
+ wxSocketBase& ReadMsg(void *buffer, wxUint32 nbytes);
+ wxSocketBase& Unread(const void *buffer, wxUint32 nbytes);
+ wxSocketBase& Write(const void *buffer, wxUint32 nbytes);
+ wxSocketBase& WriteMsg(const void *buffer, wxUint32 nbytes);
+
+ void InterruptWait() { m_interrupt = true; };
+ bool Wait(long seconds = -1, long milliseconds = 0);
+ bool WaitForRead(long seconds = -1, long milliseconds = 0);
+ bool WaitForWrite(long seconds = -1, long milliseconds = 0);
+ bool WaitForLost(long seconds = -1, long milliseconds = 0);
+
+ inline wxSocketFlags GetFlags() const { return m_flags; }
+ void SetFlags(wxSocketFlags flags);
+ void SetTimeout(long seconds);
+
+ bool GetOption(int level, int optname, void *optval, int *optlen);
+ bool SetOption(int level, int optname, const void *optval, int optlen);
+ inline wxUint32 GetLastIOSize() const { return m_lcount; };
+
+ // event handling
+ void *GetClientData() const { return m_clientData; }
+ void SetClientData(void *data) { m_clientData = data; }
+ void SetEventHandler(wxEvtHandler& handler, int id = wxID_ANY);
+ void SetNotify(wxSocketEventFlags flags);
+ void Notify(bool notify);