[gnome-battery-bench] Assume energy_now while computing statistics



commit 9032b092268b4d3fd3b33986be39c309b81d7866
Author: Christian Kellner <gicmo gnome org>
Date:   Wed May 3 13:43:35 2017 +0200

    Assume energy_now while computing statistics
    
    Therefore we can simplify the code. The minimal interval we need
    to wait to see any changes is UPDATE_FREQUENCY.

 src/power-monitor.c |   20 +++++++++++---------
 1 files changed, 11 insertions(+), 9 deletions(-)
---
diff --git a/src/power-monitor.c b/src/power-monitor.c
index 016fc06..3d7f4f8 100644
--- a/src/power-monitor.c
+++ b/src/power-monitor.c
@@ -254,15 +254,17 @@ gbb_power_statistics_compute (const GbbPowerState   *base,
 
     double time_elapsed = (current->time_us - base->time_us) / 1000000.;
 
-    if (current->energy_now >= 0 && time_elapsed > 0) {
-        double energy_used = base->energy_now - current->energy_now;
-        if (energy_used > 0) {
-            statistics->power = 3600 * (energy_used) / time_elapsed;
-            if (base->energy_full >= 0)
-                statistics->battery_life = 3600 * base->energy_full / statistics->power;
-            if (base->energy_full_design >= 0)
-                statistics->battery_life_design = 3600 * base->energy_full_design / statistics->power;
-        }
+    if (time_elapsed < (UPDATE_FREQUENCY / 1000.)) {
+        return statistics;
+    }
+
+    double energy_used = base->energy_now - current->energy_now;
+    if (energy_used > 0) {
+        statistics->power = 3600 * (energy_used) / time_elapsed;
+        if (base->energy_full >= 0)
+            statistics->battery_life = 3600 * base->energy_full / statistics->power;
+        if (base->energy_full_design >= 0)
+            statistics->battery_life_design = 3600 * base->energy_full_design / statistics->power;
     }
 
     return statistics;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]