BinaryStream Class
a BinaryStream can be use to perform sequential read or write inside a buffer. The BinaryStream maintains a cursor up to date as the caller operates on the stream using the various read/write methods. It uses the Little Endian convention.
data can either be:
- a Buffer , in this case the BinaryStream operates on this Buffer
- null , in this case a BinaryStream with 1024 bytes is created
- any data , in this case the object is converted into a binary buffer.
example:
var stream = new BinaryStream(32)
Constructor
BinaryStream
-
data
Parameters:
-
data
Null | Buffer | Number
Item Index
Methods
- BinaryStream.rewind
- calculateByteLength calculate the size in bytes of a utf8 string
- decodeArray
- encodeArray
- getRandomInt
- getRandomInt
- readArrayBuffer
- readByte
- readByteStream
- readDouble
- readFloat
- readInt16
- readInteger
- readUInt16
- readUInt32
- readUInt8
- writeArrayBuffer
- writeByteStream
- writeDouble
- writeFloat
- writeInt16
- writeInt8
- writeInteger
- writeUInt16
- writeUInt32
- writeUInt8
Methods
BinaryStream.rewind
()
set the cursor to the begining of the stream
Returns:
null
calculateByteLength
calculate the size in bytes of a utf8 string
-
str
Parameters:
-
str
String
decodeArray
-
stream
-
decode_element_func
Parameters:
-
stream
BinaryStreamthe stream.
-
decode_element_func
FunctionThe function to decode a single array element. This function returns the element decoded from the stream
-
stream
BinaryStreamthe stream.
-
Returns:
encodeArray
-
arr
-
stream
-
encode_element_func
Parameters:
-
arr
Arraythe array to encode.
-
stream
BinaryStreamthe stream.
-
encode_element_func
FunctionThe function to encode a single array element.
-
element
Object -
stream
BinaryStreamthe stream.
-
getRandomInt
-
min
-
max
return a random integer value in the range of min inclusive and max exclusive
Parameters:
-
min
Object -
max
Object
Returns:
getRandomInt
-
min
-
max
return a random float value in the range of min inclusive and max exclusive
Parameters:
-
min
Object -
max
Object
Returns:
readArrayBuffer
-
length
Parameters:
-
length
Object
Returns:
readByte
()
Number
read a single signed byte (8 bits) from the stream.
Returns:
readByteStream
()
Buffer
read a byte stream to the stream. The method reads the length of the byte array from the stream as a 32 bits integer before reading the byte stream.
Returns:
readDouble
()
read a single 64-bit floating point number from the stream.
Returns:
the value read from the stream
readFloat
()
read a single 32-bit floating point number from the stream.
Returns:
the value read from the stream
readInt16
()
Number
read a single signed 16-bit integer from the stream.
Returns:
readInteger
()
Number
read a single signed 32-bit integer from the stream.
Returns:
readUInt16
()
Number
read a single unsigned 16-bit integer from the stream.
Returns:
q
readUInt32
()
Number
read a single unsigned 32-bit integer from the stream.
Returns:
the value read from the stream
readUInt8
()
Number
read a single unsigned byte (8 bits) from the stream.
Returns:
writeArrayBuffer
-
arrayBuf
-
offset
-
length
Parameters:
-
arrayBuf
ArrayBuffer -
offset
Number -
length
Number
writeByteStream
-
buf
write a byte stream to the stream. The method writes the length of the byte array into the stream as a 32 bits integer before the byte stream.
Parameters:
-
buf
Bufferthe buffer to write. the buffer buf.length the buffer to write
writeDouble
-
value
write a single 64 bit floating number to the stream.
Parameters:
-
value
Object
writeFloat
-
value
write a single 32 bit floating number to the stream.
Parameters:
-
value
Object
writeInt16
-
value
write a single 16 bit signed integer to the stream.
Parameters:
-
value
Object
writeInt8
-
value
write a single signed byte (8 bits) to the stream. value must be in the range of [-127,128]
Parameters:
-
value
Object
writeInteger
-
value
write a single 32 bit signed integer to the stream.
Parameters:
-
value
Object
writeUInt16
-
value
write a single 16 bit unsigned integer to the stream.
Parameters:
-
value
Object
writeUInt32
-
value
write a single 32 bit unsigned integer to the stream.
Parameters:
-
value
Object
writeUInt8
-
value
write a single unsigned byte (8 bits) to the stream.
Parameters:
-
value
Object