Home | History | Annotate | Download | only in jsr239
      1 **
      2 ** Copyright 2006, The Android Open Source Project
      3 **
      4 ** Licensed under the Apache License, Version 2.0 (the "License"); 
      5 ** you may not use this file except in compliance with the License. 
      6 ** You may obtain a copy of the License at 
      7 **
      8 **     http://www.apache.org/licenses/LICENSE-2.0 
      9 **
     10 ** Unless required by applicable law or agreed to in writing, software 
     11 ** distributed under the License is distributed on an "AS IS" BASIS, 
     12 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
     13 ** See the License for the specific language governing permissions and 
     14 ** limitations under the License.
     15 */
     16 
     17 // This source file is automatically generated
     18 
     19 package com.google.android.gles_jni;
     20 
     21 import android.app.ActivityThread;
     22 import android.content.pm.ApplicationInfo;
     23 import android.content.pm.IPackageManager;
     24 import android.os.Build;
     25 import android.util.Log;
     26 
     27 import java.nio.Buffer;
     28 import javax.microedition.khronos.opengles.GL10;
     29 import javax.microedition.khronos.opengles.GL10Ext;
     30 import javax.microedition.khronos.opengles.GL11;
     31 import javax.microedition.khronos.opengles.GL11Ext;
     32 import javax.microedition.khronos.opengles.GL11ExtensionPack;
     33 
     34 public class GLImpl implements GL10, GL10Ext, GL11, GL11Ext, GL11ExtensionPack {
     35 
     36     // Private accessors for native code
     37 
     38     native private static void _nativeClassInit();
     39     static {
     40 	_nativeClassInit();
     41     }
     42 
     43     Buffer _colorPointer = null;
     44     Buffer _normalPointer = null;
     45     Buffer _texCoordPointer = null;
     46     Buffer _vertexPointer = null;
     47     Buffer _pointSizePointerOES = null;
     48     Buffer _matrixIndexPointerOES = null;
     49     Buffer _weightPointerOES = null;
     50     
     51     private boolean haveCheckedExtensions;
     52     private boolean have_OES_blend_equation_separate;
     53     private boolean have_OES_blend_subtract;
     54     private boolean have_OES_framebuffer_object;
     55     private boolean have_OES_texture_cube_map;
     56 
     57     public GLImpl() {
     58     }
     59 
     60     public void glGetPointerv(int pname, java.nio.Buffer[] params) {
     61         throw new UnsupportedOperationException("glGetPointerv");
     62     }
     63 
     64     private static boolean allowIndirectBuffers(String appName) {
     65         boolean result = false;
     66         int version = 0;
     67         IPackageManager pm = ActivityThread.getPackageManager();
     68         try {
     69             ApplicationInfo applicationInfo = pm.getApplicationInfo(appName, 0);
     70             if (applicationInfo != null) {
     71                 version = applicationInfo.targetSdkVersion;
     72             }
     73         } catch (android.os.RemoteException e) {
     74             // ignore
     75         }
     76         Log.e("OpenGLES", String.format(
     77             "Application %s (SDK target %d) called a GL11 Pointer method with an indirect Buffer.",
     78             appName, version));
     79         if (version <= Build.VERSION_CODES.CUPCAKE) {
     80             result = true;
     81         }
     82         return result;
     83     }
     84 
     85