power: Remove unneeded gmock references.
[chromiumos/platform/power_manager.git] / examples / xidle_example.cc
1 // Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include <gdk/gdk.h>
6 #include <inttypes.h>
7
8 #include <cstdio>
9
10 #include "base/logging.h"
11 #include "power_manager/xidle.h"
12 #include "power_manager/xidle_observer.h"
13
14 // Prints console notifications when the user is and is not idle.
15 class XIdleObserverExample : public power_manager::XIdleObserver {
16  public:
17   // Overridden from power_manager::XIdleObserver:
18   virtual void OnIdleEvent(bool is_idle, int64 idle_time_ms) {
19     if (is_idle)
20       printf("User has been idle for %" PRIi64 " ms\n", idle_time_ms);
21     else
22       printf("User is active\n");
23   }
24 };
25
26 int main(int argc, char** argv) {
27   gdk_init(&argc, &argv);
28   GMainLoop* loop = g_main_loop_new(NULL, false);
29   power_manager::XIdle idle;
30   XIdleObserverExample observer;
31   CHECK(idle.Init(&observer));
32   CHECK(idle.AddIdleTimeout(2000));
33   CHECK(idle.AddIdleTimeout(5000));
34   g_main_loop_run(loop);
35   return 0;
36 }