+wxDataInputStream& wxDataInputStream::operator>>(wxInt16& i)
+{
+ i = (wxInt16)Read16();
+ return *this;
+}
+
+wxDataInputStream& wxDataInputStream::operator>>(wxInt32& i)
+{
+ i = (wxInt32)Read32();
+ return *this;
+}
+
+wxDataInputStream& wxDataInputStream::operator>>(wxUint8& c)
+{
+ c = Read8();
+ return *this;
+}
+
+wxDataInputStream& wxDataInputStream::operator>>(wxUint16& i)
+{
+ i = Read16();
+ return *this;
+}
+
+wxDataInputStream& wxDataInputStream::operator>>(wxUint32& i)
+{
+ i = Read32();
+ return *this;
+}
+
+wxDataInputStream& wxDataInputStream::operator>>(double& i)
+{
+ i = ReadDouble();
+ return *this;
+}
+
+wxDataInputStream& wxDataInputStream::operator>>(float& f)
+{
+ f = (float)ReadDouble();
+ return *this;
+}
+
+// ---------------------------------------------------------------------------
+// wxDataOutputStream
+// ---------------------------------------------------------------------------
+
+wxDataOutputStream::wxDataOutputStream(wxOutputStream& s)
+ : m_output(&s)
+{
+}
+
+wxDataOutputStream::~wxDataOutputStream()
+{
+}
+
+void wxDataOutputStream::Write32(wxUint32 i)
+{
+ char buf[4];