123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- // Copyright 2019 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.
- #include "ipc/trace_ipc_message.h"
- #include <stdint.h>
- #include "ipc/ipc_message_macros.h"
- #include "ipc/ipc_message_start.h"
- #include "third_party/perfetto/protos/perfetto/trace/track_event/chrome_legacy_ipc.pbzero.h"
- namespace IPC {
- using perfetto::protos::pbzero::ChromeLegacyIpc;
- void WriteIpcMessageIdAsProtozero(uint32_t message_id,
- ChromeLegacyIpc* legacy_ipc) {
- ChromeLegacyIpc::MessageClass message_class =
- ChromeLegacyIpc::CLASS_UNSPECIFIED;
- switch (IPC_MESSAGE_ID_CLASS(message_id)) {
- case AutomationMsgStart:
- message_class = ChromeLegacyIpc::CLASS_AUTOMATION;
- break;
- case TestMsgStart:
- message_class = ChromeLegacyIpc::CLASS_TEST;
- break;
- case WorkerMsgStart:
- message_class = ChromeLegacyIpc::CLASS_WORKER;
- break;
- case NaClMsgStart:
- message_class = ChromeLegacyIpc::CLASS_NACL;
- break;
- case PpapiMsgStart:
- message_class = ChromeLegacyIpc::CLASS_PPAPI;
- break;
- case ExtensionMsgStart:
- message_class = ChromeLegacyIpc::CLASS_EXTENSION;
- break;
- case ChromotingMsgStart:
- message_class = ChromeLegacyIpc::CLASS_CHROMOTING;
- break;
- case NaClHostMsgStart:
- message_class = ChromeLegacyIpc::CLASS_NACL_HOST;
- break;
- case EncryptedMediaMsgStart:
- message_class = ChromeLegacyIpc::CLASS_ENCRYPTED_MEDIA;
- break;
- case GinJavaBridgeMsgStart:
- message_class = ChromeLegacyIpc::CLASS_GIN_JAVA_BRIDGE;
- break;
- case ExtensionWorkerMsgStart:
- message_class = ChromeLegacyIpc::CLASS_EXTENSION_WORKER;
- break;
- }
- legacy_ipc->set_message_class(message_class);
- legacy_ipc->set_message_line(IPC_MESSAGE_ID_LINE(message_id));
- }
- } // namespace IPC
|