4d9eb5fa4a23d1479e032187b89cb2691bfa826a
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / modules / gamepad / WebKitGamepad.h
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 #ifndef WebKitGamepad_h
6 #define WebKitGamepad_h
7
8 #include "bindings/core/v8/ScriptWrappable.h"
9 #include "modules/gamepad/GamepadCommon.h"
10 #include "platform/heap/Handle.h"
11 #include "wtf/Vector.h"
12
13 namespace blink {
14
15 class WebKitGamepad FINAL : public GarbageCollectedFinalized<WebKitGamepad>, public GamepadCommon, public ScriptWrappable {
16     DEFINE_WRAPPERTYPEINFO();
17 public:
18     static WebKitGamepad* create()
19     {
20         return new WebKitGamepad();
21     }
22     ~WebKitGamepad();
23
24     typedef Vector<float> FloatVector;
25
26     const FloatVector& buttons() const { return m_buttons; }
27     void setButtons(unsigned count, const WebGamepadButton* data);
28
29     void trace(Visitor*) { }
30
31 private:
32     WebKitGamepad();
33     FloatVector m_buttons;
34 };
35
36 } // namespace blink
37
38 #endif // WebKitGamepad_h