Index: device/battery/battery_monitor_impl.h |
diff --git a/device/battery/battery_monitor_impl.h b/device/battery/battery_monitor_impl.h |
index 7916b0d2b4adb97155844a0d2abfa2b480b422b4..11def80ee1c1dcdddf8a4029e1a0127cc556a614 100644 |
--- a/device/battery/battery_monitor_impl.h |
+++ b/device/battery/battery_monitor_impl.h |
@@ -5,6 +5,8 @@ |
#ifndef DEVICE_BATTERY_BATTERY_MONITOR_IMPL_H_ |
#define DEVICE_BATTERY_BATTERY_MONITOR_IMPL_H_ |
+#include <deque> |
+ |
#include "base/memory/scoped_ptr.h" |
#include "device/battery/battery_export.h" |
#include "device/battery/battery_monitor.mojom.h" |
@@ -19,14 +21,23 @@ class BatteryMonitorImpl : public BatteryMonitor { |
mojo::InterfaceRequest<BatteryMonitor> request); |
private: |
+ typedef mojo::Callback<void(BatteryStatusPtr)> BatteryStatusCallback; |
+ |
explicit BatteryMonitorImpl(mojo::InterfaceRequest<BatteryMonitor> request); |
~BatteryMonitorImpl() override; |
+ // BatteryMonitor methods: |
+ void QueryNextStatus(const BatteryStatusCallback& callback) override; |
+ |
void RegisterSubscription(); |
void DidChange(const BatteryStatus& battery_status); |
+ void ReportStatus(); |
mojo::StrongBinding<BatteryMonitor> binding_; |
scoped_ptr<BatteryStatusService::BatteryUpdateSubscription> subscription_; |
+ std::deque<BatteryStatusCallback> callbacks_; |
timvolodine
2015/01/07 14:38:51
nit: std::vector is probably sufficient here?
|
+ BatteryStatus status_; |
+ bool status_to_report_; |
DISALLOW_COPY_AND_ASSIGN(BatteryMonitorImpl); |
}; |