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;
        }
Exemple #2
0
 public PowerDistributionPair(IResourceSuppliable key, PowerDistribution value)
 {
     Key   = key;
     Value = value;
 }