X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/eafc087e69e52add5952190bfd5bcbbf931ad12b..d30e0edda826c92918de02fade41f05d2c4417ca:/include/wx/datstrm.h diff --git a/include/wx/datstrm.h b/include/wx/datstrm.h index b5bd8a1664..1b38a486b3 100644 --- a/include/wx/datstrm.h +++ b/include/wx/datstrm.h @@ -9,40 +9,69 @@ // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// -#ifndef __DATSTREAMH__ -#define __DATSTREAMH__ +#ifndef _WX_DATSTREAM_H_ +#define _WX_DATSTREAM_H_ #ifdef __GNUG__ #pragma interface "datstrm.h" #endif -#include "wx/wx.h" +#include -class wxDataStream { -public: - wxDataStream(iostream& s); - wxDataStream(istream& s); - wxDataStream(ostream& s); +#if wxUSE_STREAMS - virtual ~wxDataStream(); +class WXDLLEXPORT wxDataInputStream { +public: + wxDataInputStream(wxInputStream& s); + ~wxDataInputStream(); - unsigned long Read32(); - unsigned short Read16(); - unsigned char Read8(); + wxUint32 Read32(); + wxUint16 Read16(); + wxUint8 Read8(); double ReadDouble(); - wxString ReadLine(); wxString ReadString(); - void Write32(unsigned long i); - void Write16(unsigned short i); - void Write8(unsigned char i); + wxDataInputStream& operator>>(wxString& s); + wxDataInputStream& operator>>(wxInt8& c); + wxDataInputStream& operator>>(wxInt16& i); + wxDataInputStream& operator>>(wxInt32& i); + wxDataInputStream& operator>>(wxUint8& c); + wxDataInputStream& operator>>(wxUint16& i); + wxDataInputStream& operator>>(wxUint32& i); + wxDataInputStream& operator>>(double& i); + wxDataInputStream& operator>>(float& f); + protected: + wxInputStream *m_input; +}; + +class WXDLLEXPORT wxDataOutputStream { + public: + wxDataOutputStream(wxOutputStream& s); + ~wxDataOutputStream(); + + void Write32(wxUint32 i); + void Write16(wxUint16 i); + void Write8(wxUint8 i); void WriteDouble(double d); - void WriteLine(const wxString& line); void WriteString(const wxString& string); -protected: - istream *m_istream; - ostream *m_ostream; + + wxDataOutputStream& operator<<(const wxChar *string); + wxDataOutputStream& operator<<(wxString& string); + wxDataOutputStream& operator<<(wxInt8 c); + wxDataOutputStream& operator<<(wxInt16 i); + wxDataOutputStream& operator<<(wxInt32 i); + wxDataOutputStream& operator<<(wxUint8 c); + wxDataOutputStream& operator<<(wxUint16 i); + wxDataOutputStream& operator<<(wxUint32 i); + wxDataOutputStream& operator<<(double f); + wxDataOutputStream& operator<<(float f); + + protected: + wxOutputStream *m_output; }; #endif - // __HELPBASEH__ + // wxUSE_STREAMS + +#endif + // _WX_DATSTREAM_H_