added wx(U)int64, then added it to wxDataStream so contrib should
(hopefully) now build on alpha, ia64, s/390 without the kludge from 2.2 git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -37,6 +37,18 @@ wxDataInputStream::~wxDataInputStream()
|
||||
{
|
||||
}
|
||||
|
||||
wxUint64 wxDataInputStream::Read64()
|
||||
{
|
||||
wxUint64 i64;
|
||||
|
||||
m_input->Read(&i64, 8);
|
||||
|
||||
if (m_be_order)
|
||||
return wxUINT64_SWAP_ON_LE(i64);
|
||||
else
|
||||
return wxUINT64_SWAP_ON_BE(i64);
|
||||
}
|
||||
|
||||
wxUint32 wxDataInputStream::Read32()
|
||||
{
|
||||
wxUint32 i32;
|
||||
@@ -151,6 +163,12 @@ wxDataInputStream& wxDataInputStream::operator>>(wxUint32& i)
|
||||
return *this;
|
||||
}
|
||||
|
||||
wxDataInputStream& wxDataInputStream::operator>>(wxUint64& i)
|
||||
{
|
||||
i = Read64();
|
||||
return *this;
|
||||
}
|
||||
|
||||
wxDataInputStream& wxDataInputStream::operator>>(double& i)
|
||||
{
|
||||
i = ReadDouble();
|
||||
@@ -176,6 +194,17 @@ wxDataOutputStream::~wxDataOutputStream()
|
||||
{
|
||||
}
|
||||
|
||||
void wxDataOutputStream::Write64(wxUint64 i)
|
||||
{
|
||||
wxUint64 i64;
|
||||
|
||||
if (m_be_order)
|
||||
i64 = wxUINT64_SWAP_ON_LE(i);
|
||||
else
|
||||
i64 = wxUINT64_SWAP_ON_BE(i);
|
||||
m_output->Write(&i64, 8);
|
||||
}
|
||||
|
||||
void wxDataOutputStream::Write32(wxUint32 i)
|
||||
{
|
||||
wxUint32 i32;
|
||||
@@ -279,6 +308,12 @@ wxDataOutputStream& wxDataOutputStream::operator<<(wxUint32 i)
|
||||
return *this;
|
||||
}
|
||||
|
||||
wxDataOutputStream& wxDataOutputStream::operator<<(wxUint64 i)
|
||||
{
|
||||
Write64(i);
|
||||
return *this;
|
||||
}
|
||||
|
||||
wxDataOutputStream& wxDataOutputStream::operator<<(double f)
|
||||
{
|
||||
WriteDouble(f);
|
||||
|
Reference in New Issue
Block a user