ByteBuffer: Added support for reading unsigned shorts and ints.
This commit is contained in:
parent
b333551830
commit
adf3b3a569
@ -344,12 +344,28 @@ bool cByteBuffer::ReadByte(unsigned char & a_Value)
|
||||
|
||||
|
||||
bool cByteBuffer::ReadBEShort(short & a_Value)
|
||||
{
|
||||
CHECK_THREAD
|
||||
CheckValid();
|
||||
NEEDBYTES(2);
|
||||
Int16 val;
|
||||
ReadBuf(&val, 2);
|
||||
val = ntohs(val);
|
||||
a_Value = *(reinterpret_cast<short *>(&val));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
bool cByteBuffer::ReadBEUInt16(UInt16 & a_Value)
|
||||
{
|
||||
CHECK_THREAD
|
||||
CheckValid();
|
||||
NEEDBYTES(2);
|
||||
ReadBuf(&a_Value, 2);
|
||||
a_Value = (short)ntohs((u_short)a_Value);
|
||||
a_Value = ntohs(a_Value);
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -371,6 +387,20 @@ bool cByteBuffer::ReadBEInt(int & a_Value)
|
||||
|
||||
|
||||
|
||||
bool cByteBuffer::ReadBEUInt32(UInt32 & a_Value)
|
||||
{
|
||||
CHECK_THREAD
|
||||
CheckValid();
|
||||
NEEDBYTES(4);
|
||||
ReadBuf(&a_Value, 4);
|
||||
a_Value = ntohl(a_Value);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
bool cByteBuffer::ReadBEInt64(Int64 & a_Value)
|
||||
{
|
||||
CHECK_THREAD
|
||||
|
@ -55,7 +55,9 @@ public:
|
||||
bool ReadChar (char & a_Value);
|
||||
bool ReadByte (unsigned char & a_Value);
|
||||
bool ReadBEShort (short & a_Value);
|
||||
bool ReadBEUInt16 (UInt16 & a_Value);
|
||||
bool ReadBEInt (int & a_Value);
|
||||
bool ReadBEUInt32 (UInt32 & a_Value);
|
||||
bool ReadBEInt64 (Int64 & a_Value);
|
||||
bool ReadBEFloat (float & a_Value);
|
||||
bool ReadBEDouble (double & a_Value);
|
||||
|
Loading…
Reference in New Issue
Block a user