X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1777b9bbf4573dabecf4a3256d0d3c2c0c2a3fdf..0cc1991e2a3ae8df8f716d5a9bf1a59e2a17d0b3:/include/wx/sckstrm.h diff --git a/include/wx/sckstrm.h b/include/wx/sckstrm.h index 7e5159294a..c33e6143b7 100644 --- a/include/wx/sckstrm.h +++ b/include/wx/sckstrm.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: sckstrm.h +// Name: wx/sckstrm.h // Purpose: wxSocket*Stream // Author: Guilhem Lavaux // Modified by: @@ -11,56 +11,61 @@ #ifndef __SCK_STREAM_H__ #define __SCK_STREAM_H__ -#ifdef __GNUG__ -#pragma interface -#endif - #include "wx/stream.h" #if wxUSE_SOCKETS && wxUSE_STREAMS #include "wx/socket.h" -class WXDLLEXPORT wxSocketOutputStream : public wxOutputStream +class WXDLLIMPEXP_NET wxSocketOutputStream : public wxOutputStream { - public: - wxSocketOutputStream(wxSocketBase& s); - ~wxSocketOutputStream(); +public: + wxSocketOutputStream(wxSocketBase& s); + virtual ~wxSocketOutputStream(); + +protected: + wxSocketBase *m_o_socket; - off_t SeekO( off_t WXUNUSED(pos), wxSeekMode WXUNUSED(mode) ) - { return -1; } - off_t TellO() - { return -1; } + size_t OnSysWrite(const void *buffer, size_t bufsize); - protected: - wxSocketBase *m_o_socket; + // socket streams are both un-seekable and size-less streams: + wxFileOffset OnSysTell() const + { return wxInvalidOffset; } + wxFileOffset OnSysSeek(wxFileOffset WXUNUSED(pos), wxSeekMode WXUNUSED(mode)) + { return wxInvalidOffset; } - size_t OnSysWrite(const void *buffer, size_t bufsize); + wxDECLARE_NO_COPY_CLASS(wxSocketOutputStream); }; -class WXDLLEXPORT wxSocketInputStream : public wxInputStream +class WXDLLIMPEXP_NET wxSocketInputStream : public wxInputStream { - public: - wxSocketInputStream(wxSocketBase& s); - ~wxSocketInputStream(); +public: + wxSocketInputStream(wxSocketBase& s); + virtual ~wxSocketInputStream(); - off_t SeekI( off_t WXUNUSED(pos), wxSeekMode WXUNUSED(mode) ) - { return -1; } - off_t TellI() - { return -1; } +protected: + wxSocketBase *m_i_socket; - protected: - wxSocketBase *m_i_socket; + size_t OnSysRead(void *buffer, size_t bufsize); - size_t OnSysRead(void *buffer, size_t bufsize); + // socket streams are both un-seekable and size-less streams: + + wxFileOffset OnSysTell() const + { return wxInvalidOffset; } + wxFileOffset OnSysSeek(wxFileOffset WXUNUSED(pos), wxSeekMode WXUNUSED(mode)) + { return wxInvalidOffset; } + + wxDECLARE_NO_COPY_CLASS(wxSocketInputStream); }; -class WXDLLEXPORT wxSocketStream : public wxSocketInputStream, +class WXDLLIMPEXP_NET wxSocketStream : public wxSocketInputStream, public wxSocketOutputStream { - public: - wxSocketStream(wxSocketBase& s); - ~wxSocketStream(); +public: + wxSocketStream(wxSocketBase& s); + virtual ~wxSocketStream(); + + wxDECLARE_NO_COPY_CLASS(wxSocketStream); }; #endif