6package org.mozilla.gecko.gfx;
8import android.opengl.GLES20;
9import android.util.Log;
11import java.util.concurrent.ArrayBlockingQueue;
13import javax.microedition.khronos.egl.EGL10;
14import javax.microedition.khronos.egl.EGLContext;
35 public synchronized int take() {
39 }
catch (InterruptedException e) {
44 public synchronized void fill() {
45 EGL10 egl = (EGL10) EGLContext.getEGL();
46 EGLContext context = egl.eglGetCurrentContext();
60 while ((error = GLES20.glGetError()) != GLES20.GL_NO_ERROR) {
64 int[] textures =
new int[numNeeded];
65 GLES20.glGenTextures(numNeeded, textures, 0);
67 error = GLES20.glGetError();
68 if (error != GLES20.GL_NO_ERROR) {
73 for (
int i = 0;
i < numNeeded;
i++) {
static TextureGenerator sSharedInstance
static final String LOGTAG
ArrayBlockingQueue< Integer > mTextureIds
static final int POOL_SIZE