89 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			89 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
**
 | 
						|
** Copyright 2006, The Android Open Source Project
 | 
						|
**
 | 
						|
** Licensed under the Apache License, Version 2.0 (the "License"); 
 | 
						|
** you may not use this file except in compliance with the License. 
 | 
						|
** You may obtain a copy of the License at 
 | 
						|
**
 | 
						|
**     http://www.apache.org/licenses/LICENSE-2.0 
 | 
						|
**
 | 
						|
** Unless required by applicable law or agreed to in writing, software 
 | 
						|
** distributed under the License is distributed on an "AS IS" BASIS, 
 | 
						|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
 | 
						|
** See the License for the specific language governing permissions and 
 | 
						|
** limitations under the License.
 | 
						|
*/
 | 
						|
 | 
						|
// This source file is automatically generated
 | 
						|
 | 
						|
package com.google.android.gles_jni;
 | 
						|
 | 
						|
import android.app.AppGlobals;
 | 
						|
import android.compat.annotation.UnsupportedAppUsage;
 | 
						|
import android.content.pm.ApplicationInfo;
 | 
						|
import android.content.pm.IPackageManager;
 | 
						|
import android.os.Build;
 | 
						|
import android.os.UserHandle;
 | 
						|
import android.util.Log;
 | 
						|
 | 
						|
import java.nio.Buffer;
 | 
						|
 | 
						|
import javax.microedition.khronos.opengles.GL10;
 | 
						|
import javax.microedition.khronos.opengles.GL10Ext;
 | 
						|
import javax.microedition.khronos.opengles.GL11;
 | 
						|
import javax.microedition.khronos.opengles.GL11Ext;
 | 
						|
import javax.microedition.khronos.opengles.GL11ExtensionPack;
 | 
						|
 | 
						|
public class GLImpl implements GL10, GL10Ext, GL11, GL11Ext, GL11ExtensionPack {
 | 
						|
 | 
						|
    // Private accessors for native code
 | 
						|
 | 
						|
    native private static void _nativeClassInit();
 | 
						|
    static {
 | 
						|
        _nativeClassInit();
 | 
						|
    }
 | 
						|
 | 
						|
    Buffer _colorPointer = null;
 | 
						|
    Buffer _normalPointer = null;
 | 
						|
    Buffer _texCoordPointer = null;
 | 
						|
    Buffer _vertexPointer = null;
 | 
						|
    Buffer _pointSizePointerOES = null;
 | 
						|
    Buffer _matrixIndexPointerOES = null;
 | 
						|
    Buffer _weightPointerOES = null;
 | 
						|
    
 | 
						|
    private boolean haveCheckedExtensions;
 | 
						|
    private boolean have_OES_blend_equation_separate;
 | 
						|
    private boolean have_OES_blend_subtract;
 | 
						|
    private boolean have_OES_framebuffer_object;
 | 
						|
    private boolean have_OES_texture_cube_map;
 | 
						|
 | 
						|
    @UnsupportedAppUsage
 | 
						|
    public GLImpl() {
 | 
						|
    }
 | 
						|
 | 
						|
    public void glGetPointerv(int pname, java.nio.Buffer[] params) {
 | 
						|
        throw new UnsupportedOperationException("glGetPointerv");
 | 
						|
    }
 | 
						|
 | 
						|
    private static boolean allowIndirectBuffers(String appName) {
 | 
						|
        boolean result = false;
 | 
						|
        int version = 0;
 | 
						|
        IPackageManager pm = AppGlobals.getPackageManager();
 | 
						|
        try {
 | 
						|
            ApplicationInfo applicationInfo = pm.getApplicationInfo(appName, 0, UserHandle.myUserId());
 | 
						|
            if (applicationInfo != null) {
 | 
						|
                version = applicationInfo.targetSdkVersion;
 | 
						|
            }
 | 
						|
        } catch (android.os.RemoteException e) {
 | 
						|
            // ignore
 | 
						|
        }
 | 
						|
        Log.e("OpenGLES", String.format(
 | 
						|
            "Application %s (SDK target %d) called a GL11 Pointer method with an indirect Buffer.",
 | 
						|
            appName, version));
 | 
						|
        if (version <= Build.VERSION_CODES.CUPCAKE) {
 | 
						|
            result = true;
 | 
						|
        }
 | 
						|
        return result;
 | 
						|
    }
 | 
						|
 |