Exemplo n.º 1
0
//--------------------------------------------------------------------------
void VeBinaryOStream::WritePackedInt(VeSizeT stValue) noexcept
{
	VE_ASSERT(stValue <= VE_MAX_LENGTH);
	if (stValue >= 255)
	{
		(*this) << (VeUInt8)0xFF;
		VeChar8 acValue[3];
		VE_PACK3(acValue, (VeUInt32)stValue);
		VE_ASSERT_EQ(Write(acValue, sizeof(acValue)), sizeof(acValue));
	}
	else
	{
		(*this) << (VeUInt8)stValue;
	}
}
Exemplo n.º 2
0
//--------------------------------------------------------------------------
void VeBinaryOStream::WritePackedInt(VeInt32 i32Value)
{
	VE_ASSERT(((VeUInt32)i32Value) <= VE_MAX_LENGTH);
	if(i32Value >= 255)
	{
		(*this) << (VeUInt8)0xFF;
		VeChar8 acValue[3];
		VE_PACK3(acValue, i32Value);
		VE_ASSERT_EQ(Write(acValue, sizeof(acValue)), sizeof(acValue));
	}
	else
	{
		(*this) << (VeUInt8)i32Value;
	}
}