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// IPC messages for the AEC dump.
6// Multiply-included message file, hence no include guard.
7
8#include "content/common/content_export.h"
9#include "ipc/ipc_message_macros.h"
10#include "ipc/ipc_platform_file.h"
11
12#undef IPC_MESSAGE_EXPORT
13#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
14#define IPC_MESSAGE_START AecDumpMsgStart
15
16// Messages sent from the browser to the renderer.
17
18// The browser hands over a file handle to the consumer in the renderer
19// identified by |id| to use for AEC dump.
20IPC_MESSAGE_CONTROL2(AecDumpMsg_EnableAecDump,
21                     int /* id */,
22                     IPC::PlatformFileForTransit /* file_handle */)
23
24// Tell the renderer to disable AEC dump in all consumers.
25IPC_MESSAGE_CONTROL0(AecDumpMsg_DisableAecDump)
26
27// Messages sent from the renderer to the browser.
28
29// Registers a consumer with the browser. The consumer will then get a file
30// handle when the dump is enabled.
31IPC_MESSAGE_CONTROL1(AecDumpMsg_RegisterAecDumpConsumer,
32                     int /* id */)
33
34// Unregisters a consumer with the browser.
35IPC_MESSAGE_CONTROL1(AecDumpMsg_UnregisterAecDumpConsumer,
36                     int /* id */)
37