public void powerDrawPerSecond(IResourceSuppliable pm, double power_current_requested, double power_maximum_requested, double power_consumed) { if (power_current_requested.IsInfinityOrNaN() || power_maximum_requested.IsInfinityOrNaN() || power_consumed.IsInfinityOrNaN()) { return; } CurrentConsumption += power_consumed; if (!consumptionRequests.TryGetValue(pm, out PowerDistribution powerDistribution)) { consumptionRequests.Add(pm, powerDistribution = new PowerDistribution()); } powerDistribution.PowerCurrentRequest += power_current_requested; powerDistribution.PowerMaximumRequest += power_maximum_requested; powerDistribution.PowerConsumed += power_consumed; }
public PowerDistributionPair(IResourceSuppliable key, PowerDistribution value) { Key = key; Value = value; }