#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "components/services/heap_profiling/public/mojom/heap_profiling_service.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "components/services/heap_profiling/public/mojom/heap_profiling_service.mojom-params-data.h"
#include "components/services/heap_profiling/public/mojom/heap_profiling_service.mojom-shared-message-ids.h"
#include "components/services/heap_profiling/public/mojom/heap_profiling_service.mojom-import-headers.h"
#include "components/services/heap_profiling/public/mojom/heap_profiling_service.mojom-test-utils.h"
namespace heap_profiling::mojom {
const char ProfilingService::Name_[] = …;
ProfilingService::IPCStableHashFunction ProfilingService::MessageToMethodInfo_(mojo::Message& message) { … }
const char* ProfilingService::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t ProfilingService::AddProfilingClient_Sym::IPCStableHash() { … }
uint32_t ProfilingService::GetProfiledPids_Sym::IPCStableHash() { … }
# endif
class ProfilingService_AddProfilingClient_ForwardToCallback
: public mojo::MessageReceiver { … };
class ProfilingService_GetProfiledPids_ForwardToCallback
: public mojo::MessageReceiver { … };
ProfilingServiceProxy::ProfilingServiceProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void ProfilingServiceProxy::AddProfilingClient(
::base::ProcessId in_pid, ::mojo::PendingRemote<::heap_profiling::mojom::ProfilingClient> in_client, ProcessType in_process_type, ::heap_profiling::mojom::ProfilingParamsPtr in_params, AddProfilingClientCallback callback) { … }
void ProfilingServiceProxy::GetProfiledPids(
GetProfiledPidsCallback callback) { … }
class ProfilingService_AddProfilingClient_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool ProfilingService_AddProfilingClient_ForwardToCallback::Accept(
mojo::Message* message) { … }
void ProfilingService_AddProfilingClient_ProxyToResponder::Run(
bool in_success) { … }
class ProfilingService_GetProfiledPids_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool ProfilingService_GetProfiledPids_ForwardToCallback::Accept(
mojo::Message* message) { … }
void ProfilingService_GetProfiledPids_ProxyToResponder::Run(
const std::vector<::base::ProcessId>& in_pids) { … }
bool ProfilingServiceStubDispatch::Accept(
ProfilingService* impl,
mojo::Message* message) { … }
bool ProfilingServiceStubDispatch::AcceptWithResponder(
ProfilingService* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kProfilingServiceValidationInfo[] = …;
bool ProfilingServiceRequestValidator::Accept(mojo::Message* message) { … }
bool ProfilingServiceResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
}
namespace heap_profiling::mojom {
void ProfilingServiceInterceptorForTesting::AddProfilingClient(::base::ProcessId pid, ::mojo::PendingRemote<::heap_profiling::mojom::ProfilingClient> client, ProcessType process_type, ::heap_profiling::mojom::ProfilingParamsPtr params, AddProfilingClientCallback callback) { … }
void ProfilingServiceInterceptorForTesting::GetProfiledPids(GetProfiledPidsCallback callback) { … }
ProfilingServiceAsyncWaiter::ProfilingServiceAsyncWaiter(
ProfilingService* proxy) : … { … }
ProfilingServiceAsyncWaiter::~ProfilingServiceAsyncWaiter() = default;
void ProfilingServiceAsyncWaiter::AddProfilingClient(
::base::ProcessId pid, ::mojo::PendingRemote<::heap_profiling::mojom::ProfilingClient> client, ProcessType process_type, ::heap_profiling::mojom::ProfilingParamsPtr params, bool* out_success) { … }
bool ProfilingServiceAsyncWaiter::AddProfilingClient(
::base::ProcessId pid, ::mojo::PendingRemote<::heap_profiling::mojom::ProfilingClient> client, ProcessType process_type, ::heap_profiling::mojom::ProfilingParamsPtr params) { … }
void ProfilingServiceAsyncWaiter::GetProfiledPids(
std::vector<::base::ProcessId>* out_pids) { … }
std::vector<::base::ProcessId> ProfilingServiceAsyncWaiter::GetProfiledPids(
) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif