Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Side by Side Diff: content/renderer/device_orientation/device_sensor_event_pump.h

Issue 236833003: Rename device_orientation to device_sensors (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2013 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 #ifndef CONTENT_RENDERER_DEVICE_SENSOR_EVENT_PUMP_H_
6 #define CONTENT_RENDERER_DEVICE_SENSOR_EVENT_PUMP_H_
7
8 #include "base/memory/shared_memory.h"
9 #include "base/timer/timer.h"
10 #include "content/public/renderer/render_process_observer.h"
11
12 namespace content {
13 class RenderThread;
14
15 class CONTENT_EXPORT DeviceSensorEventPump : public RenderProcessObserver {
16 public:
17 // Default delay between subsequent firing of events.
18 static const int kDefaultPumpDelayMillis;
19
20 int GetDelayMillis() const;
21
22 void Attach(RenderThread* thread);
23 virtual bool OnControlMessageReceived(const IPC::Message& message) = 0;
24
25 protected:
26 // Constructor for a pump with default delay.
27 DeviceSensorEventPump();
28
29 // Constructor for a pump with a given delay.
30 explicit DeviceSensorEventPump(int pump_delay_millis);
31 virtual ~DeviceSensorEventPump();
32
33 // The pump is a tri-state automaton with allowed transitions as follows:
34 // STOPPED -> PENDING_START
35 // PENDING_START -> RUNNING
36 // PENDING_START -> STOPPED
37 // RUNNING -> STOPPED
38 enum PumpState {
39 STOPPED,
40 RUNNING,
41 PENDING_START
42 };
43
44 bool RequestStart();
45 void OnDidStart(base::SharedMemoryHandle handle);
46 bool Stop();
47
48 virtual void FireEvent() = 0;
49 virtual bool InitializeReader(base::SharedMemoryHandle handle) = 0;
50 virtual bool SendStartMessage() = 0;
51 virtual bool SendStopMessage() = 0;
52
53 int pump_delay_millis_;
54 PumpState state_;
55 base::RepeatingTimer<DeviceSensorEventPump> timer_;
56 };
57
58 } // namespace content
59
60 #endif // CONTENT_RENDERER_DEVICE_SENSOR_EVENT_PUMP_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698