1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Data stream classes
4 // Author: Guilhem Lavaux
8 // Copyright: (c) Guilhem Lavaux
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_DATSTREAM_H_
13 #define _WX_DATSTREAM_H_
16 #pragma interface "datstrm.h"
19 #include "wx/stream.h"
23 class WXDLLEXPORT wxDataInputStream
26 wxDataInputStream(wxInputStream
& s
);
33 wxString
ReadString();
35 wxDataInputStream
& operator>>(wxString
& s
);
36 wxDataInputStream
& operator>>(wxInt8
& c
);
37 wxDataInputStream
& operator>>(wxInt16
& i
);
38 wxDataInputStream
& operator>>(wxInt32
& i
);
39 wxDataInputStream
& operator>>(wxUint8
& c
);
40 wxDataInputStream
& operator>>(wxUint16
& i
);
41 wxDataInputStream
& operator>>(wxUint32
& i
);
42 wxDataInputStream
& operator>>(double& i
);
43 wxDataInputStream
& operator>>(float& f
);
45 void BigEndianOrdered(bool be_order
) { m_be_order
= be_order
; }
48 wxInputStream
*m_input
;
52 class WXDLLEXPORT wxDataOutputStream
55 wxDataOutputStream(wxOutputStream
& s
);
56 ~wxDataOutputStream();
58 void Write32(wxUint32 i
);
59 void Write16(wxUint16 i
);
60 void Write8(wxUint8 i
);
61 void WriteDouble(double d
);
62 void WriteString(const wxString
& string
);
64 wxDataOutputStream
& operator<<(const wxChar
*string
);
65 wxDataOutputStream
& operator<<(const wxString
& string
);
66 wxDataOutputStream
& operator<<(wxInt8 c
);
67 wxDataOutputStream
& operator<<(wxInt16 i
);
68 wxDataOutputStream
& operator<<(wxInt32 i
);
69 wxDataOutputStream
& operator<<(wxUint8 c
);
70 wxDataOutputStream
& operator<<(wxUint16 i
);
71 wxDataOutputStream
& operator<<(wxUint32 i
);
72 wxDataOutputStream
& operator<<(double f
);
73 wxDataOutputStream
& operator<<(float f
);
75 void BigEndianOrdered(bool be_order
) { m_be_order
= be_order
; }
78 wxOutputStream
*m_output
;