// Path: src/main/java/com/github/worldsender/mcanm/client/IRenderPass.java
// public interface IRenderPass extends IRenderPassInformation {
// 	/**
// 	 * Binds the resource-location given.<br>
// 	 * <b>WARNING</b> This does not transform the resourc-location via
// 	 * {@link #getActualResourceLocation(ResourceLocation)}. This has the be done before calling this method.
// 	 *
// 	 * @param resLoc
// 	 *            the resource to bind
// 	 */
// 	void bindTexture(ResourceLocation resLoc);
// }
// 
// Path: src/main/java/com/github/worldsender/mcanm/client/model/IModelStateInformation.java
// public interface IModelStateInformation {
// 
// 	IAnimation getAnimation();
// 
// 	float getFrame();
// 
// 	boolean shouldRenderPart(String part);
// 
// }


import java.util.List;
import java.util.Map;
import com.github.worldsender.mcanm.client.IRenderPass;
import com.github.worldsender.mcanm.client.model.IModelStateInformation;
import net.minecraft.client.renderer.block.model.BakedQuad;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.client.renderer.vertex.VertexFormat;
package com.github.worldsender.mcanm.client.mcanmmodel.gl;




/**
 * Interface for ModelData.
 *
 * @author WorldSEnder
 *
 */
public interface IModelRenderData {
	/**
	 * Renders the model from the given RenderPass.
	 *
	 * @param pass
	 */
	public void render(IRenderPass pass);

	/**
	 * The totally inefficient method of minecraft to get block data
	 * 
	 * @param currentPass
	 * @param slotToTex
	 * @param format
	 * @return
	 */
	List<BakedQuad> getAsBakedQuads(
// Path: src/main/java/com/github/worldsender/mcanm/client/IRenderPass.java
// public interface IRenderPass extends IRenderPassInformation {
// 	/**
// 	 * Binds the resource-location given.<br>
// 	 * <b>WARNING</b> This does not transform the resourc-location via
// 	 * {@link #getActualResourceLocation(ResourceLocation)}. This has the be done before calling this method.
// 	 *
// 	 * @param resLoc
// 	 *            the resource to bind
// 	 */
// 	void bindTexture(ResourceLocation resLoc);
// }
// 
// Path: src/main/java/com/github/worldsender/mcanm/client/model/IModelStateInformation.java
// public interface IModelStateInformation {
// 
// 	IAnimation getAnimation();
// 
// 	float getFrame();
// 
// 	boolean shouldRenderPart(String part);
// 
// }


// Path: src/main/java/com/github/worldsender/mcanm/client/mcanmmodel/gl/IModelRenderData.java
import java.util.List;
import java.util.Map;
import com.github.worldsender.mcanm.client.IRenderPass;
import com.github.worldsender.mcanm.client.model.IModelStateInformation;
import net.minecraft.client.renderer.block.model.BakedQuad;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.client.renderer.vertex.VertexFormat;

package com.github.worldsender.mcanm.client.mcanmmodel.gl;




/**
 * Interface for ModelData.
 *
 * @author WorldSEnder
 *
 */
public interface IModelRenderData {
	/**
	 * Renders the model from the given RenderPass.
	 *
	 * @param pass
	 */
	public void render(IRenderPass pass);

	/**
	 * The totally inefficient method of minecraft to get block data
	 * 
	 * @param currentPass
	 * @param slotToTex
	 * @param format
	 * @return
	 */
	List<BakedQuad> getAsBakedQuads(
			IModelStateInformation currentPass,