Interface IEnergyService
- All Superinterfaces:
IEnergySource,IGridService
-
Method Summary
Modifier and TypeMethodDescriptiondoubledoubledoubledoublegetEnergyDemand(double maxRequired) Calculation will be capped at maxRequired, this improves performance by limiting the number of nodes needed to calculate the demand.doubleReturn the current calculated idle energy drain each tick, is used internally to drain power for each tick.doublethis is should be considered an estimate, and not relied upon for real calculations.doublethis is should be considered an estimate, and not relied upon for real calculations.doubleinjectPower(double amt, Actionable mode) AE will accept any power, and store it, to maintain sanity please don't send more then 10,000 at a time.booleanAE maintains an idle draw of power separate from active power draw, it condenses this into a single operation that determines the networks "powered state" if the network is considered off-line, your machines should not function.Methods inherited from interface appeng.api.networking.energy.IEnergySource
extractAEPower
-
Method Details
-
getIdlePowerUsage
@Nonnegative double getIdlePowerUsage()Return the current calculated idle energy drain each tick, is used internally to drain power for each tick. It's the sum of the idle channel power usage and the idle usages of the machines in the network. -
getChannelPowerUsage
@Nonnegative double getChannelPowerUsage()- Returns:
- the current idle power usage of channels
-
getAvgPowerUsage
@Nonnegative double getAvgPowerUsage()- Returns:
- the average power drain over the past 10 ticks, includes idle usage during this time, and all use of extractPower.
-
getAvgPowerInjection
@Nonnegative double getAvgPowerInjection()- Returns:
- the average energy injected into the system per tick, for the last 10 ticks.
-
isNetworkPowered
boolean isNetworkPowered()AE maintains an idle draw of power separate from active power draw, it condenses this into a single operation that determines the networks "powered state" if the network is considered off-line, your machines should not function.Nodes are notified via
IGridNodeListener.onStateChanged(T, appeng.api.networking.IGridNode, appeng.api.networking.IGridNodeListener.State)when this value changes. Most machines can simply test the value when they are about to perform work, without listening to this event.- Returns:
- if the network is powered or not.
-
injectPower
AE will accept any power, and store it, to maintain sanity please don't send more then 10,000 at a time.IMPORTANT: Network power knows no bounds, for less spamy power flow, networks can store more then their allotted storage, however, it should be kept to a minimum, to help with this, this method returns the networks current OVERFLOW, this is not energy you can store some where else, its already stored in the network, you can extract it if you want, however it it owned by the network, this is different then IAEEnergyStore
Another important note, is that if a network that had overflow is deleted, its power is gone, this is one of the reasons why keeping overflow to a minimum is important.
- Parameters:
amt- power to inject into the networkmode- should the action be simulated or performed?- Returns:
- the amount of power that the network has OVER the limit.
-
getStoredPower
@Nonnegative double getStoredPower()this is should be considered an estimate, and not relied upon for real calculations.- Returns:
- estimated available power.
-
getMaxStoredPower
@Nonnegative double getMaxStoredPower()this is should be considered an estimate, and not relied upon for real calculations.- Returns:
- estimated available power.
-
getEnergyDemand
@Nonnegative double getEnergyDemand(@Nonnegative double maxRequired) Calculation will be capped at maxRequired, this improves performance by limiting the number of nodes needed to calculate the demand.- Returns:
- Amount of power required to charge the grid, in AE.
-