Index: device/gamepad/public/cpp/gamepads.h |
diff --git a/device/gamepad/public/cpp/gamepads.h b/device/gamepad/public/cpp/gamepads.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e5ebebfb2515c18e5d6297abede59588c4eec756 |
--- /dev/null |
+++ b/device/gamepad/public/cpp/gamepads.h |
@@ -0,0 +1,29 @@ |
+// Copyright 2017 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef DEVICE_GAMEPAD_PUBLIC_CPP_GAMEPADS_H_ |
+#define DEVICE_GAMEPAD_PUBLIC_CPP_GAMEPADS_H_ |
+ |
+#include "device/gamepad/public/cpp/gamepad.h" |
+ |
+namespace device { |
+ |
+#pragma pack(push, 4) |
+ |
+// This structure is intentionally POD and fixed size so that it can be stored |
+// in shared memory between hardware polling threads and the rest of the |
+// browser. |
+class Gamepads { |
+ public: |
+ static constexpr size_t kItemsLengthCap = 4; |
+ |
+ // Gamepad data for N separate gamepad devices. |
+ Gamepad items[kItemsLengthCap]; |
+}; |
+ |
+#pragma pack(pop) |
+ |
+} // namespace device |
+ |
+#endif // DEVICE_GAMEPAD_PUBLIC_CPP_GAMEPADS_H_ |