@Override public short getInt16(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Int16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Int16ArrayNative.create(buf, ofs, 1).get(0); }
@Override public float getFloat32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Float32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Float32ArrayNative.create(buf, ofs, 1).get(0); }
@Override public int getInt32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Int32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Int32ArrayNative.create(buf, ofs, 1).get(0); }
@Override public long getUint32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Uint32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Uint32ArrayNative.create(buf, ofs, 1).get(0); }
@Override public double getFloat64(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Float64Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Float64ArrayNative.create(buf, ofs, 1).get(0); }
@Override public int getUint16(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Uint16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Uint16ArrayNative.create(buf, ofs, 1).get(0); }
@Override public void setUint32(int byteOffset, long value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Uint32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Uint32ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public void setFloat64(int byteOffset, double value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Float64Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Float64ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public void setInt16(int byteOffset, int value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Int16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Int16ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public void setFloat32(int byteOffset, float value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Float32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Float32ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public void setUint16(int byteOffset, int value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Uint16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Uint16ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public void setUint32FromDouble(int byteOffset, double value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Uint32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Uint32ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public void setInt32(int byteOffset, int value, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int finalOfs = ofs; int len = Int32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { buf = tempBuffer.buffer(); ofs = 0; } Int32ArrayNative.create(buf, ofs, 1).set(0, value); if (littleEndian != nativeLittleEndian) { reverseBytes(tempBuffer, 0, len, uint8Array, finalOfs); } }
@Override public short getInt16(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Int16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Int16ArrayNative.create(buf, ofs, 1).get(0); }
@Override public int getUint16(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Uint16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Uint16ArrayNative.create(buf, ofs, 1).get(0); }
@Override public float getFloat32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Float32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Float32ArrayNative.create(buf, ofs, 1).get(0); }
@Override public int getInt32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Int32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Int32ArrayNative.create(buf, ofs, 1).get(0); }
@Override public int getUint16(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Uint16Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Uint16ArrayNative.create(buf, ofs, 1).get(0); }
@Override public int getInt32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Int32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Int32ArrayNative.create(buf, ofs, 1).get(0); }
@Override public long getUint32(int byteOffset, boolean littleEndian) { ArrayBuffer buf = buffer; int ofs = bufferByteOffset + byteOffset; int len = Uint32Array.BYTES_PER_ELEMENT; if (littleEndian != nativeLittleEndian) { reverseBytes(uint8Array, ofs, len, tempBuffer, 0); buf = tempBuffer.buffer(); ofs = 0; } return Uint32ArrayNative.create(buf, ofs, 1).get(0); }