public virtual long readU4()
{
long c1 = r();
long c2 = r();
long c3 = r();
long c4 = r();
if ((c1 | c2 | c3 | c4) < 0) throw IOErr.make("Unexpected end of stream").val;
if (m_bigEndian)
return (c1 << 24) + (c2 << 16) + (c3 << 8) + c4;
else
return (c4 << 24) + (c3 << 16) + (c2 << 8) + c1;
}