GLImplHeader.java-impl revision 66089a33ea4efda711a3a5180f0b001bdac48dcf
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 19package com.google.android.gles_jni; 20 21import android.app.ActivityThread; 22import android.content.pm.ApplicationInfo; 23import android.content.pm.IPackageManager; 24import android.os.Build; 25import android.util.Log; 26 27import java.nio.Buffer; 28import javax.microedition.khronos.opengles.GL10; 29import javax.microedition.khronos.opengles.GL10Ext; 30import javax.microedition.khronos.opengles.GL11; 31import javax.microedition.khronos.opengles.GL11Ext; 32import javax.microedition.khronos.opengles.GL11ExtensionPack; 33 34public 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 public GLImpl() { 52 } 53 54 public void glGetPointerv(int pname, java.nio.Buffer[] params) { 55 throw new UnsupportedOperationException("glGetPointerv"); 56 } 57 58 private static boolean allowIndirectBuffers(String appName) { 59 boolean result = false; 60 int version = 0; 61 IPackageManager pm = ActivityThread.getPackageManager(); 62 try { 63 ApplicationInfo applicationInfo = pm.getApplicationInfo(appName, 0); 64 if (applicationInfo != null) { 65 version = applicationInfo.targetSdkVersion; 66 } 67 } catch (android.os.RemoteException e) { 68 // ignore 69 } 70 Log.e("OpenGLES", String.format( 71 "Application %s (SDK target %d) called a GL11 Pointer method with an indirect Buffer.", 72 appName, version)); 73 if (version <= Build.VERSION_CODES.CUPCAKE) { 74 result = true; 75 } 76 return result; 77 } 78 79