/* Class155 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */
import jaclib.memory.Buffer;

import jaggl.OpenGL;

public abstract class Class155 {
	int anInt1866;
	static final int anInt1867 = 34963;
	Class84_Sub3 aClass84_Sub3_1868;
	int anInt1869;
	boolean aBool1870;
	int anInt1871;
	static final int anInt1872 = 34962;
	boolean aBool1873 = false;
	static int[] anIntArray1874 = new int[1];

	abstract void method3441();

	Class155(Class84_Sub3 class84_sub3, int i, Buffer buffer, int i_0_, boolean bool) {
		((Class155) this).aClass84_Sub3_1868 = class84_sub3;
		((Class155) this).anInt1869 = i;
		((Class155) this).anInt1871 = i_0_;
		((Class155) this).aBool1870 = bool;
		OpenGL.glGenBuffersARB(1, anIntArray1874, 0);
		((Class155) this).anInt1866 = anIntArray1874[0];
		method3442();
		OpenGL.glBufferDataARBa(i, ((Class155) this).anInt1871, buffer.method110(), ((Class155) this).aBool1870 ? 35040 : 35044);
		((Class84_Sub3) ((Class155) this).aClass84_Sub3_1868).anInt9352 += ((Class155) this).anInt1871;
	}

	abstract void method3442();

	public void finalize() throws Throwable {
		if (!((Class155) this).aBool1873) {
			((Class155) this).aClass84_Sub3_1868.method15455((((Class155) this).anInt1866), (((Class155) this).anInt1871));
			((Class155) this).aBool1873 = true;
		}
		super.finalize();
	}

	void method3443(byte[] is, int i) {
		method3442();
		if (i > ((Class155) this).anInt1871) {
			OpenGL.glBufferDataARBub(((Class155) this).anInt1869, i, is, 0, (((Class155) this).aBool1870 ? 35040 : 35044));
			((Class84_Sub3) ((Class155) this).aClass84_Sub3_1868).anInt9352 += i - ((Class155) this).anInt1871;
			((Class155) this).anInt1871 = i;
		} else
			OpenGL.glBufferSubDataARBub(((Class155) this).anInt1869, 0, i, is, 0);
	}

	void method3444() throws Throwable {
		if (!((Class155) this).aBool1873) {
			((Class155) this).aClass84_Sub3_1868.method15455((((Class155) this).anInt1866), (((Class155) this).anInt1871));
			((Class155) this).aBool1873 = true;
		}
		super.finalize();
	}

	void method3445() throws Throwable {
		if (!((Class155) this).aBool1873) {
			((Class155) this).aClass84_Sub3_1868.method15455((((Class155) this).anInt1866), (((Class155) this).anInt1871));
			((Class155) this).aBool1873 = true;
		}
		super.finalize();
	}

	Class155(Class84_Sub3 class84_sub3, int i, byte[] is, int i_1_, boolean bool) {
		((Class155) this).aClass84_Sub3_1868 = class84_sub3;
		((Class155) this).anInt1869 = i;
		((Class155) this).anInt1871 = i_1_;
		((Class155) this).aBool1870 = bool;
		OpenGL.glGenBuffersARB(1, anIntArray1874, 0);
		((Class155) this).anInt1866 = anIntArray1874[0];
		method3442();
		OpenGL.glBufferDataARBub(i, ((Class155) this).anInt1871, is, 0, ((Class155) this).aBool1870 ? 35040 : 35044);
		((Class84_Sub3) ((Class155) this).aClass84_Sub3_1868).anInt9352 += ((Class155) this).anInt1871;
	}

	abstract void method3446();

	void method3447(byte[] is, int i) {
		method3442();
		if (i > ((Class155) this).anInt1871) {
			OpenGL.glBufferDataARBub(((Class155) this).anInt1869, i, is, 0, (((Class155) this).aBool1870 ? 35040 : 35044));
			((Class84_Sub3) ((Class155) this).aClass84_Sub3_1868).anInt9352 += i - ((Class155) this).anInt1871;
			((Class155) this).anInt1871 = i;
		} else
			OpenGL.glBufferSubDataARBub(((Class155) this).anInt1869, 0, i, is, 0);
	}

	void method3448(byte[] is, int i) {
		method3442();
		if (i > ((Class155) this).anInt1871) {
			OpenGL.glBufferDataARBub(((Class155) this).anInt1869, i, is, 0, (((Class155) this).aBool1870 ? 35040 : 35044));
			((Class84_Sub3) ((Class155) this).aClass84_Sub3_1868).anInt9352 += i - ((Class155) this).anInt1871;
			((Class155) this).anInt1871 = i;
		} else
			OpenGL.glBufferSubDataARBub(((Class155) this).anInt1869, 0, i, is, 0);
	}

	void method3449(byte[] is, int i) {
		method3442();
		if (i > ((Class155) this).anInt1871) {
			OpenGL.glBufferDataARBub(((Class155) this).anInt1869, i, is, 0, (((Class155) this).aBool1870 ? 35040 : 35044));
			((Class84_Sub3) ((Class155) this).aClass84_Sub3_1868).anInt9352 += i - ((Class155) this).anInt1871;
			((Class155) this).anInt1871 = i;
		} else
			OpenGL.glBufferSubDataARBub(((Class155) this).anInt1869, 0, i, is, 0);
	}
}
