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

Unified Diff: Source/core/platform/midi/MIDIAccessorChromium.h

Issue 16288002: Web MIDI API (work in progress) (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: add accessApproved() Created 7 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/platform/midi/MIDIAccessor.h ('k') | Source/core/platform/midi/MIDIAccessorChromium.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/platform/midi/MIDIAccessorChromium.h
diff --git a/Source/modules/device_orientation/DeviceMotionDispatcher.h b/Source/core/platform/midi/MIDIAccessorChromium.h
similarity index 56%
copy from Source/modules/device_orientation/DeviceMotionDispatcher.h
copy to Source/core/platform/midi/MIDIAccessorChromium.h
index 54f05670ef6fe0d570f7a0080ab0211472303855..69aa5b4d8acc83fa5f8eae9655ac46decdbe22af 100644
--- a/Source/modules/device_orientation/DeviceMotionDispatcher.h
+++ b/Source/core/platform/midi/MIDIAccessorChromium.h
@@ -28,52 +28,37 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef DeviceMotionDispatcher_h
-#define DeviceMotionDispatcher_h
+#ifndef MIDIAccessorChromium_h
+#define MIDIAccessorChromium_h
-#include "DeviceMotionData.h"
-#include "wtf/RefPtr.h"
-#include "wtf/Vector.h"
-#include "public/platform/WebDeviceMotionListener.h"
+#include "core/platform/midi/MIDIAccessor.h"
+#include "wtf/OwnPtr.h"
+#include "public/platform/WebMIDIAccessor.h"
+#include "public/platform/WebString.h"
-namespace WebKit {
-class WebDeviceMotionData;
-}
+namespace WebCore {
-namespace WebCore {
-
-class DeviceMotionController;
-class DeviceMotionData;
-
-// This class listens to device motion data and dispatches it to all
-// listening controllers.
-class DeviceMotionDispatcher : public WebKit::WebDeviceMotionListener {
+class MIDIAccessorChromium : public MIDIAccessor, public WebKit::WebMIDIAccessor::Client {
public:
- static DeviceMotionDispatcher& instance();
-
- void addController(DeviceMotionController*);
- void removeController(DeviceMotionController*);
+ MIDIAccessorChromium(MIDIAccessorClient*);
+ virtual ~MIDIAccessorChromium() { }
- // Note that the returned object is owned by this class.
- // FIXME: make the return value const, see crbug.com/233174.
- DeviceMotionData* latestDeviceMotionData();
+ // MIDIAccessor
+ virtual void requestAccess(int access) OVERRIDE;
+ virtual void sendMIDIData(unsigned portIndex, const unsigned char* data, size_t length, double timeStamp) OVERRIDE;
- // This method is called every time new device motion data is available.
- virtual void didChangeDeviceMotion(const WebKit::WebDeviceMotionData&) OVERRIDE;
+ // WebKit::WebMIDIAccessor::Client
+ virtual void addInputPort(const WebKit::WebString& id, const WebKit::WebString& manufacturer, const WebKit::WebString& name, const WebKit::WebString& version) OVERRIDE;
+ virtual void addOutputPort(const WebKit::WebString& id, const WebKit::WebString& manufacturer, const WebKit::WebString& name, const WebKit::WebString& version) OVERRIDE;
+ virtual void accessApproved(bool approved) OVERRIDE;
+ virtual void receiveMIDIData(unsigned portIndex, const unsigned char* data, size_t length, double timeStamp) OVERRIDE;
private:
- DeviceMotionDispatcher();
- ~DeviceMotionDispatcher();
-
- void startListening();
- void stopListening();
-
- void purgeControllers();
+ MIDIAccessorClient* m_client;
- RefPtr<DeviceMotionData> m_lastDeviceMotionData;
- Vector<DeviceMotionController*> m_controllers;
+ OwnPtr<WebKit::WebMIDIAccessor> m_accessor;
};
} // namespace WebCore
-#endif // DeviceMotionDispatcher_h
+#endif // MIDIAccessorChromium_h
« no previous file with comments | « Source/core/platform/midi/MIDIAccessor.h ('k') | Source/core/platform/midi/MIDIAccessorChromium.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698