Buffer

Binary buffer with cursor-based reading and writing

It

Buffer object

struct It {
  U0* handle
  U8 order
  U32 cursor
};

setOrder

Set the byte order for subsequent get/put operations

U0 setOrder(Buffer buffer, U8 order)

Parameters

  • buffer — The buffer
  • order — Byte order — use UHC_LITTLE_ENDIAN or UHC_BIG_ENDIAN

reset

Reset the buffer cursor to the beginning

U0 reset(Buffer buffer)

Parameters

  • buffer — The buffer

getI8

Read a signed 8-bit integer from the buffer

I8 getI8(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getU8

Read an unsigned 8-bit integer from the buffer

U8 getU8(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getI16

Read a signed 16-bit integer from the buffer

I16 getI16(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getU16

Read an unsigned 16-bit integer from the buffer

U16 getU16(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getI32

Read a signed 32-bit integer from the buffer

I32 getI32(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getU32

Read an unsigned 32-bit integer from the buffer

U32 getU32(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getI64

Read a signed 64-bit integer from the buffer

I64 getI64(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getU64

Read an unsigned 64-bit integer from the buffer

U64 getU64(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getF32

Read a 32-bit float from the buffer

F32 getF32(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


getF64

Read a 64-bit float from the buffer

F64 getF64(Buffer buffer)

Parameters

  • buffer — The buffer

Returns — The value read


putI8

Write a signed 8-bit integer to the buffer

U0 putI8(Buffer buffer, I8 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putU8

Write an unsigned 8-bit integer to the buffer

U0 putU8(Buffer buffer, U8 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putI16

Write a signed 16-bit integer to the buffer

U0 putI16(Buffer buffer, I16 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putU16

Write an unsigned 16-bit integer to the buffer

U0 putU16(Buffer buffer, U16 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putI32

Write a signed 32-bit integer to the buffer

U0 putI32(Buffer buffer, I32 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putU32

Write an unsigned 32-bit integer to the buffer

U0 putU32(Buffer buffer, U32 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putI64

Write a signed 64-bit integer to the buffer

U0 putI64(Buffer buffer, I64 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putU64

Write an unsigned 64-bit integer to the buffer

U0 putU64(Buffer buffer, U64 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putF32

Write a 32-bit float to the buffer

U0 putF32(Buffer buffer, F32 value)

Parameters

  • buffer — The buffer
  • value — The value to write

putF64

Write a 64-bit float to the buffer

U0 putF64(Buffer buffer, F64 value)

Parameters

  • buffer — The buffer
  • value — The value to write