public interface BalanceablePoolModel<ContainerType,ItemType>
BalancingStrategy
.Modifier and Type | Method and Description |
---|---|
java.util.Map<ContainerType,java.lang.Double> |
getContainerWorkrates() |
double |
getCurrentPoolWorkrate() |
double |
getHighThreshold(ContainerType container) |
java.util.Map<ItemType,java.lang.Double> |
getItemWorkrates(ContainerType container)
contains -1 instead of actual item workrate, for items which cannot be moved
|
Location |
getLocation(ContainerType container) |
double |
getLowThreshold(ContainerType container) |
java.lang.String |
getName() |
java.lang.String |
getName(ContainerType container) |
java.util.Set<ContainerType> |
getPoolContents() |
double |
getPoolHighThreshold() |
double |
getPoolLowThreshold() |
int |
getPoolSize() |
double |
getTotalWorkrate(ContainerType container) |
boolean |
isCold() |
boolean |
isHot() |
boolean |
isItemAllowedIn(ItemType item,
Location location) |
boolean |
isItemMoveable(ItemType item) |
void |
onContainerAdded(ContainerType newContainer,
double lowThreshold,
double highThreshold) |
void |
onContainerRemoved(ContainerType oldContainer) |
void |
onItemAdded(ItemType item,
ContainerType parentContainer) |
void |
onItemAdded(ItemType item,
ContainerType parentContainer,
boolean immovable) |
void |
onItemMoved(ItemType item,
ContainerType targetContainer) |
void |
onItemRemoved(ItemType item) |
void |
onItemWorkrateUpdated(ItemType item,
double newValue) |
java.lang.String getName()
int getPoolSize()
java.util.Set<ContainerType> getPoolContents()
double getPoolLowThreshold()
double getPoolHighThreshold()
double getCurrentPoolWorkrate()
boolean isHot()
boolean isCold()
java.lang.String getName(ContainerType container)
Location getLocation(ContainerType container)
double getLowThreshold(ContainerType container)
double getHighThreshold(ContainerType container)
double getTotalWorkrate(ContainerType container)
java.util.Map<ContainerType,java.lang.Double> getContainerWorkrates()
java.util.Map<ItemType,java.lang.Double> getItemWorkrates(ContainerType container)
boolean isItemMoveable(ItemType item)
void onContainerAdded(ContainerType newContainer, double lowThreshold, double highThreshold)
void onContainerRemoved(ContainerType oldContainer)
void onItemAdded(ItemType item, ContainerType parentContainer)
void onItemAdded(ItemType item, ContainerType parentContainer, boolean immovable)
void onItemRemoved(ItemType item)
void onItemWorkrateUpdated(ItemType item, double newValue)
void onItemMoved(ItemType item, ContainerType targetContainer)