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

Side by Side Diff: third_party/WebKit/Source/modules/sensor/SensorReading.h

Issue 2121313002: [sensors] Generic Sensors Framework blink side (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@sensors_mojo_interfaces
Patch Set: Comments from Tim. Removed the default sensor configuration management (to be added with a separate… Created 4 years, 3 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
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef SensorReading_h 5 #ifndef SensorReading_h
6 #define SensorReading_h 6 #define SensorReading_h
7 7
8 #include "bindings/core/v8/ScriptWrappable.h" 8 #include "bindings/core/v8/ScriptWrappable.h"
9 #include "core/dom/DOMHighResTimeStamp.h" 9 #include "core/dom/DOMHighResTimeStamp.h"
10 #include "core/dom/DOMTimeStamp.h" 10 #include "core/dom/DOMTimeStamp.h"
11 #include "modules/ModulesExport.h" 11 #include "modules/sensor/SensorProxy.h"
12 12
13 namespace blink { 13 namespace blink {
14 14
15 class MODULES_EXPORT SensorReading : public GarbageCollectedFinalized<SensorRead ing>, public ScriptWrappable { 15 class ExecutionContext;
16
17 class SensorReading
18 : public GarbageCollected<SensorReading>
19 , public ScriptWrappable {
16 DEFINE_WRAPPERTYPEINFO(); 20 DEFINE_WRAPPERTYPEINFO();
17
18 public: 21 public:
19 static SensorReading* create()
20 {
21 return new SensorReading;
22 }
23
24 static SensorReading* create(bool providesTimeStamp, DOMHighResTimeStamp tim estamp)
25 {
26 return new SensorReading(providesTimeStamp, timestamp);
27 }
28
29 virtual ~SensorReading();
30
31 DOMHighResTimeStamp timeStamp(bool& isNull);
32
33 void setTimeStamp(DOMHighResTimeStamp time) { m_timeStamp = time; }
34
35 DECLARE_VIRTUAL_TRACE(); 22 DECLARE_VIRTUAL_TRACE();
36 23
24 DOMHighResTimeStamp timeStamp() const;
25
26 void attach(SensorProxy*);
27 void detach();
28
29 virtual bool isReadingUpdated(const SensorProxy::Reading& previous) const = 0;
30
37 protected: 31 protected:
38 bool m_canProvideTimeStamp; 32 explicit SensorReading(ExecutionContext*);
39 DOMHighResTimeStamp m_timeStamp;
40 33
41 SensorReading(); 34 protected:
42 SensorReading(bool providesTimeStamp, DOMHighResTimeStamp timestamp); 35 WeakMember<SensorProxy> m_sensorProxy;
36 WeakMember<ExecutionContext> m_context;
haraken 2016/09/06 05:04:29 Is there any reason they need to be weak members?
Mikhail 2016/09/06 07:13:58 'm_sensorProxy' might have a different lifetime (s
43 }; 37 };
44 38
45 } // namepsace blink 39 } // namepsace blink
46 40
47 #endif // SensorReading_h 41 #endif // SensorReading_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698