1// Copyright (c) 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// Multiply-included message file, no include guard.
6
7#include "base/memory/shared_memory.h"
8#include "content/common/gamepad_param_traits.h"
9#include "ipc/ipc_message_macros.h"
10#include "ipc/ipc_param_traits.h"
11#include "ipc/ipc_platform_file.h"
12#include "third_party/WebKit/public/platform/WebGamepad.h"
13
14#define IPC_MESSAGE_START GamepadMsgStart
15
16IPC_MESSAGE_CONTROL2(GamepadMsg_GamepadConnected,
17                     int /* index */,
18                     blink::WebGamepad)
19
20IPC_MESSAGE_CONTROL2(GamepadMsg_GamepadDisconnected,
21                     int /* index */,
22                     blink::WebGamepad)
23
24// Messages sent from the renderer to the browser.
25
26// Asks the browser process to start polling, and return a shared memory
27// handles that will hold the data from the hardware. See
28// gamepad_hardware_buffer.h for a description of how synchronization is
29// handled. The number of Starts should match the number of Stops.
30IPC_SYNC_MESSAGE_CONTROL0_1(GamepadHostMsg_StartPolling,
31                            base::SharedMemoryHandle /* handle */)
32
33IPC_SYNC_MESSAGE_CONTROL0_0(GamepadHostMsg_StopPolling)
34