package rajawali.util;
import java.nio.Buffer;
import java.nio.ByteBuffer;
import java.nio.FloatBuffer;
/**
* Source: http://www.google.co.uk/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CF4QFjAA&url=http%3A%2F%2Fwww.badlogicgames.com%2Fwiki%2Findex.php%2FDirect_Bulk_FloatBuffer.put_is_slow&ei=ALwkUM3mE8Kk0QXK0YCgCg&usg=AFQjCNHs7ss9m_6FFrjwienCC2OzqzB7-Q
*
* @author dennis.ippel
*
*/
public class BufferUtil {
static
{
System.loadLibrary("bufferutil");
}
native public static void copyJni(float[] src, Buffer dst, int numFloats, int offset);
public static void copy(float[] src, Buffer dst, int numFloats, int offset) {
copyJni(src, dst, numFloats, offset);
dst.position(0);
if(dst instanceof ByteBuffer)
dst.limit(numFloats << 2);
else if(dst instanceof FloatBuffer)
dst.limit(numFloats);
}
}