List of usage examples for com.google.gwt.typedarrays.client Int16Array create
public static final Int16Array create(short[] data, int offset, int len)
From source file:java.nio.ShortBuffer.java
License:Apache License
ShortBuffer(ByteBuffer byteBuffer) {
super((byteBuffer.capacity() >> 1));
this.byteBuffer = byteBuffer;
this.byteBuffer.clear();
this.shortArray = Int16Array.create(byteBuffer.byteArray.getBuffer(), byteBuffer.byteArray.getByteOffset(),
capacity);//from w w w .j a v a2 s . com
}
From source file:playn.html.HtmlGL20.java
License:Apache License
/** * Returns the typed array of the given native buffer. * Set byteSize to -1 to use remaining() *///from ww w. ja v a2 s. c o m protected ArrayBufferView getTypedArray(Buffer buffer, int type, int byteSize) { if (!(buffer instanceof HasArrayBufferView)) { throw new RuntimeException("Native buffer required " + buffer); } HasArrayBufferView arrayHolder = (HasArrayBufferView) buffer; int bufferElementSize = arrayHolder.getElementSize(); ArrayBufferView webGLArray = arrayHolder.getTypedArray(); if (byteSize == -1) { byteSize = buffer.remaining() * bufferElementSize; } if (byteSize == buffer.capacity() * bufferElementSize && type == arrayHolder.getElementType()) { return webGLArray; } int byteOffset = webGLArray.getByteOffset() + buffer.position() * bufferElementSize; switch (type) { case FLOAT: return Float32Array.create(webGLArray.getBuffer(), byteOffset, byteSize / 4); case UNSIGNED_BYTE: return Uint8Array.create(webGLArray.getBuffer(), byteOffset, byteSize); case UNSIGNED_SHORT: return Uint16Array.create(webGLArray.getBuffer(), byteOffset, byteSize / 2); case INT: return Int32Array.create(webGLArray.getBuffer(), byteOffset, byteSize / 4); case SHORT: return Int16Array.create(webGLArray.getBuffer(), byteOffset, byteSize / 2); case BYTE: return Int8Array.create(webGLArray.getBuffer(), byteOffset, byteSize); default: throw new IllegalArgumentException("Type: " + type); } }