package org.jactr.core.module.procedural.map.instance; import java.util.Set; import org.jactr.core.module.procedural.map.template.IInstantiationMapTemplate; import org.jactr.core.production.IProduction; /* * default logging */ public interface IInstaniationMap<T> { public IInstantiationMapTemplate<T> getTemplate(); public IInstaniationMap getParent(); /** * * @param production * @return true if this map is accepting the production */ public boolean add(IProduction production); public void remove(IProduction production); public int getSize(); public void activate(); public void deactivate(); public boolean isActivated(); public ProductionTable getProductionTable(); /** * the set of relevant productions who's instantiability is not know, * @return */ public Set<IProduction> getTestableProductions(); /** * a set of the relevant, but uninstantiable productions * @return */ public Set<IProduction> getFailedProductions(); }