package speiger.src.coreengine.rendering.utils.values.textures;

import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GL30;

import speiger.src.coreengine.rendering.utils.values.IGLValue.ITextureFormatType;

public enum GLTextureFormat implements ITextureFormatType {
	R(GL11.GL_RED, true),
	RG(GL30.GL_RG, true),
	RGB(GL11.GL_RGB, true),
	RGBA(GL11.GL_RGBA, true),
	DEPTH(GL11.GL_DEPTH_COMPONENT, true),
	DEPTH_STENCIL(GL30.GL_DEPTH_STENCIL, true);
	
	int glMode;
	boolean internal;
	
	private GLTextureFormat(int glMode, boolean internal) {
		this.glMode = glMode;
		this.internal = internal;
	}
	
	@Override
	public int glMode() { return glMode; }
	@Override
	public boolean internal() { return internal; }
}
