blob: 9adaeb8df617aa3b7a00f182db40ec11adca3c69 [file] [log] [blame] [raw]
package ic2.api.recipe;
import java.util.Map;
import net.minecraft.item.ItemStack;
/**
* Recipe manager interface for basic machines.
*
* @author Richard
*/
public interface IMachineRecipeManager<V> {
/**
* Adds a recipe to the machine.
*
* @param input Recipe input
* @param output Recipe output
*/
public void addRecipe(ItemStack input, V output);
/**
* Gets the recipe output for the given input.
*
* @param input Recipe input
* @return Recipe output, or null if none
*/
public V getOutputFor(ItemStack input, boolean adjustInput);
/**
* Gets a list of recipes.
*
* You're a mad evil scientist if you ever modify this.
*
* @return List of recipes
*/
public Map<ItemStack, V> getRecipes();
}