blob: 9d82d486b3d894c5a41f7254c27b940960501139 [file] [log] [blame] [raw]
package mekanism.api.transmitters;
import mekanism.api.Coord4D;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
import java.util.Collection;
public interface IGridTransmitter<A, N extends DynamicNetwork<A, N>> extends ITransmitter
{
public boolean hasTransmitterNetwork();
/**
* Gets the network currently in use by this transmitter segment.
* @return network this transmitter is using
*/
public N getTransmitterNetwork();
/**
* Sets this transmitter segment's network to a new value.
* @param network - network to set to
*/
public void setTransmitterNetwork(N network);
public int getTransmitterNetworkSize();
public int getTransmitterNetworkAcceptorSize();
public String getTransmitterNetworkNeeded();
public String getTransmitterNetworkFlow();
public String getTransmitterNetworkBuffer();
public double getTransmitterNetworkCapacity();
public int getCapacity();
public World world();
public Coord4D coord();
public Coord4D getAdjacentConnectableTransmitterCoord(ForgeDirection side);
public A getAcceptor(ForgeDirection side);
public boolean isValid();
public boolean isOrphan();
public void setOrphan(boolean orphaned);
public N createEmptyNetwork();
public N mergeNetworks(Collection<N> toMerge);
public N getExternalNetwork(Coord4D from);
public void takeShare();
public void updateShare();
public Object getBuffer();
}