X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ecd9653bf363d756f479d30fb8af11229681d74e..4520d5836a52526c64e5b9469e6acee2221476d2:/include/wx/datstrm.h diff --git a/include/wx/datstrm.h b/include/wx/datstrm.h index b691d39a36..ef049c9f2a 100644 --- a/include/wx/datstrm.h +++ b/include/wx/datstrm.h @@ -12,13 +12,9 @@ #ifndef _WX_DATSTREAM_H_ #define _WX_DATSTREAM_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "datstrm.h" -#endif - #include "wx/stream.h" #include "wx/longlong.h" -#include "wx/strconv.h" +#include "wx/convauto.h" #if wxUSE_STREAMS @@ -26,22 +22,38 @@ class WXDLLIMPEXP_BASE wxDataInputStream { public: #if wxUSE_UNICODE - wxDataInputStream(wxInputStream& s, wxMBConv& conv = wxConvUTF8); + wxDataInputStream(wxInputStream& s, const wxMBConv& conv = wxConvAuto()); #else wxDataInputStream(wxInputStream& s); #endif - ~wxDataInputStream(){}; + ~wxDataInputStream(); bool IsOk() { return m_input->IsOk(); } +#if wxHAS_INT64 wxUint64 Read64(); +#endif +#if wxUSE_LONGLONG + wxLongLong ReadLL(); +#endif wxUint32 Read32(); wxUint16 Read16(); wxUint8 Read8(); double ReadDouble(); wxString ReadString(); +#if wxHAS_INT64 void Read64(wxUint64 *buffer, size_t size); + void Read64(wxInt64 *buffer, size_t size); +#endif +#if defined(wxLongLong_t) && wxUSE_LONGLONG + void Read64(wxULongLong *buffer, size_t size); + void Read64(wxLongLong *buffer, size_t size); +#endif +#if wxUSE_LONGLONG + void ReadLL(wxULongLong *buffer, size_t size); + void ReadLL(wxLongLong *buffer, size_t size); +#endif void Read32(wxUint32 *buffer, size_t size); void Read16(wxUint16 *buffer, size_t size); void Read8(wxUint8 *buffer, size_t size); @@ -54,7 +66,14 @@ public: wxDataInputStream& operator>>(wxUint8& c); wxDataInputStream& operator>>(wxUint16& i); wxDataInputStream& operator>>(wxUint32& i); +#if wxHAS_INT64 wxDataInputStream& operator>>(wxUint64& i); + wxDataInputStream& operator>>(wxInt64& i); +#endif +#if defined(wxLongLong_t) && wxUSE_LONGLONG + wxDataInputStream& operator>>(wxULongLong& i); + wxDataInputStream& operator>>(wxLongLong& i); +#endif wxDataInputStream& operator>>(double& i); wxDataInputStream& operator>>(float& f); @@ -64,7 +83,7 @@ protected: wxInputStream *m_input; bool m_be_order; #if wxUSE_UNICODE - wxMBConv& m_conv; + wxMBConv *m_conv; #endif DECLARE_NO_COPY_CLASS(wxDataInputStream) @@ -74,28 +93,45 @@ class WXDLLIMPEXP_BASE wxDataOutputStream { public: #if wxUSE_UNICODE - wxDataOutputStream(wxOutputStream& s, wxMBConv& conv = wxConvUTF8); + wxDataOutputStream(wxOutputStream& s, const wxMBConv& conv = wxConvAuto()); #else wxDataOutputStream(wxOutputStream& s); #endif - ~wxDataOutputStream(){}; + ~wxDataOutputStream(); bool IsOk() { return m_output->IsOk(); } +#if wxHAS_INT64 void Write64(wxUint64 i); + void Write64(wxInt64 i); +#endif +#if wxUSE_LONGLONG + void WriteLL(const wxLongLong &ll); + void WriteLL(const wxULongLong &ll); +#endif void Write32(wxUint32 i); void Write16(wxUint16 i); void Write8(wxUint8 i); void WriteDouble(double d); void WriteString(const wxString& string); +#if wxHAS_INT64 void Write64(const wxUint64 *buffer, size_t size); + void Write64(const wxInt64 *buffer, size_t size); +#endif +#if defined(wxLongLong_t) && wxUSE_LONGLONG + void Write64(const wxULongLong *buffer, size_t size); + void Write64(const wxLongLong *buffer, size_t size); +#endif +#if wxUSE_LONGLONG + void WriteLL(const wxULongLong *buffer, size_t size); + void WriteLL(const wxLongLong *buffer, size_t size); +#endif void Write32(const wxUint32 *buffer, size_t size); void Write16(const wxUint16 *buffer, size_t size); void Write8(const wxUint8 *buffer, size_t size); void WriteDouble(const double *buffer, size_t size); - wxDataOutputStream& operator<<(const wxChar *string); wxDataOutputStream& operator<<(const wxString& string); wxDataOutputStream& operator<<(wxInt8 c); wxDataOutputStream& operator<<(wxInt16 i); @@ -103,7 +139,14 @@ public: wxDataOutputStream& operator<<(wxUint8 c); wxDataOutputStream& operator<<(wxUint16 i); wxDataOutputStream& operator<<(wxUint32 i); +#if wxHAS_INT64 wxDataOutputStream& operator<<(wxUint64 i); + wxDataOutputStream& operator<<(wxInt64 i); +#endif +#if defined(wxLongLong_t) && wxUSE_LONGLONG + wxDataOutputStream& operator<<(const wxULongLong &i); + wxDataOutputStream& operator<<(const wxLongLong &i); +#endif wxDataOutputStream& operator<<(double f); wxDataOutputStream& operator<<(float f); @@ -113,7 +156,7 @@ protected: wxOutputStream *m_output; bool m_be_order; #if wxUSE_UNICODE - wxMBConv& m_conv; + wxMBConv *m_conv; #endif DECLARE_NO_COPY_CLASS(wxDataOutputStream)