1f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved.
2f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// found in the LICENSE file.
4f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
5f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// IPC messages for the AEC dump.
6f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Multiply-included message file, hence no include guard.
7f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
8f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "content/common/content_export.h"
9f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "ipc/ipc_message_macros.h"
10f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "ipc/ipc_platform_file.h"
11f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
12f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#undef IPC_MESSAGE_EXPORT
13f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#define IPC_MESSAGE_EXPORT CONTENT_EXPORT
14f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#define IPC_MESSAGE_START AecDumpMsgStart
15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
16f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Messages sent from the browser to the renderer.
17f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
18f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// The browser hands over a file handle to the consumer in the renderer
19f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// identified by |id| to use for AEC dump.
20f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL2(AecDumpMsg_EnableAecDump,
21f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     int /* id */,
22f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     IPC::PlatformFileForTransit /* file_handle */)
23f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Tell the renderer to disable AEC dump in all consumers.
25f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL0(AecDumpMsg_DisableAecDump)
26f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
27f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Messages sent from the renderer to the browser.
28f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
29f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Registers a consumer with the browser. The consumer will then get a file
30f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// handle when the dump is enabled.
31f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL1(AecDumpMsg_RegisterAecDumpConsumer,
32f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     int /* id */)
33f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
34f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Unregisters a consumer with the browser.
35f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL1(AecDumpMsg_UnregisterAecDumpConsumer,
36f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     int /* id */)
37