[gnome-battery-bench] Power supply: polling of batteries



commit e991b92df00e447cc62b83ad86c34f0c114b8235
Author: Christian Kellner <gicmo gnome org>
Date:   Fri Mar 17 16:29:32 2017 +0100

    Power supply: polling of batteries

 src/power-supply.c |   19 +++++++++++++++++++
 src/power-supply.h |    4 ++--
 2 files changed, 21 insertions(+), 2 deletions(-)
---
diff --git a/src/power-supply.c b/src/power-supply.c
index 5ded60a..3ade11d 100644
--- a/src/power-supply.c
+++ b/src/power-supply.c
@@ -135,6 +135,8 @@ gbb_battery_constructed(GObject *obj)
     voltage_design_initialize(bat);
     energy_design_initialize(bat);
 
+    gbb_battery_poll(bat);
+
     G_OBJECT_CLASS(gbb_battery_parent_class)->constructed(obj);
 }
 
@@ -348,3 +350,20 @@ gbb_battery_discover()
     g_list_free_full(devices, (GDestroyNotify) g_object_unref);
     return supplies;
 }
+
+double
+gbb_battery_poll(GbbBattery *bat)
+{
+    GUdevDevice *dev = bat->udevice;
+    double new_value;
+
+    if (bat->use_charge) {
+        new_value = sysfs_read_double_scaled(dev, "charge_now");
+        new_value *= bat->voltage_desgin;
+    } else {
+        new_value = sysfs_read_double_scaled(dev, "energy_now");
+    }
+
+    bat->energy = new_value;
+    return new_value;
+}
diff --git a/src/power-supply.h b/src/power-supply.h
index 70f4d75..1a1d656 100644
--- a/src/power-supply.h
+++ b/src/power-supply.h
@@ -6,6 +6,6 @@
 #define GBB_TYPE_BATTERY gbb_battery_get_type()
 G_DECLARE_FINAL_TYPE(GbbBattery, gbb_battery, GBB, BATTERY, GObject)
 
-GList* gbb_battery_discover(void);
-
+GList *     gbb_battery_discover    (void);
+double      gbb_battery_poll        (GbbBattery *);
 #endif


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