Upstream version 7.35.139.0
[platform/framework/web/crosswalk.git] / src / ash / accelerometer / accelerometer_controller.cc
1 // Copyright 2014 The Chromium 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 "ash/accelerometer/accelerometer_controller.h"
6
7 #include "ash/accelerometer/accelerometer_observer.h"
8 #include "ui/gfx/geometry/vector3d_f.h"
9
10 namespace ash {
11
12 AccelerometerController::AccelerometerController() {
13 }
14
15 AccelerometerController::~AccelerometerController() {
16 }
17
18 void AccelerometerController::Initialize(
19     scoped_refptr<base::TaskRunner> blocking_task_runner) {
20 #if defined(OS_CHROMEOS)
21   reader_.reset(new chromeos::AccelerometerReader(blocking_task_runner, this));
22 #endif
23 }
24
25 void AccelerometerController::AddObserver(AccelerometerObserver* observer) {
26   observers_.AddObserver(observer);
27 }
28
29 void AccelerometerController::RemoveObserver(AccelerometerObserver* observer) {
30   observers_.RemoveObserver(observer);
31 }
32
33 #if defined(OS_CHROMEOS)
34 void AccelerometerController::HandleAccelerometerReading(
35     const gfx::Vector3dF& base,
36     const gfx::Vector3dF& lid) {
37   FOR_EACH_OBSERVER(AccelerometerObserver, observers_,
38       OnAccelerometerUpdated(base, lid));
39 }
40 #endif
41
42 }  // namespace ash