#include "src/tracing/ipc/consumer/consumer_ipc_client_impl.h"
#include <string.h>
#include <cinttypes>
#include "perfetto/base/task_runner.h"
#include "perfetto/ext/ipc/client.h"
#include "perfetto/ext/tracing/core/consumer.h"
#include "perfetto/ext/tracing/core/observable_events.h"
#include "perfetto/ext/tracing/core/trace_stats.h"
#include "perfetto/tracing/core/trace_config.h"
#include "perfetto/tracing/core/tracing_service_state.h"
namespace perfetto {
std::unique_ptr<TracingService::ConsumerEndpoint> ConsumerIPCClient::Connect(
const char* service_sock_name,
Consumer* consumer,
base::TaskRunner* task_runner) { … }
ConsumerIPCClientImpl::ConsumerIPCClientImpl(const char* service_sock_name,
Consumer* consumer,
base::TaskRunner* task_runner)
: … { … }
ConsumerIPCClientImpl::~ConsumerIPCClientImpl() = default;
void ConsumerIPCClientImpl::OnConnect() { … }
void ConsumerIPCClientImpl::OnDisconnect() { … }
void ConsumerIPCClientImpl::EnableTracing(const TraceConfig& trace_config,
base::ScopedFile fd) { … }
void ConsumerIPCClientImpl::ChangeTraceConfig(const TraceConfig& trace_config) { … }
void ConsumerIPCClientImpl::StartTracing() { … }
void ConsumerIPCClientImpl::DisableTracing() { … }
void ConsumerIPCClientImpl::ReadBuffers() { … }
void ConsumerIPCClientImpl::OnReadBuffersResponse(
ipc::AsyncResult<protos::gen::ReadBuffersResponse> response) { … }
void ConsumerIPCClientImpl::OnEnableTracingResponse(
ipc::AsyncResult<protos::gen::EnableTracingResponse> response) { … }
void ConsumerIPCClientImpl::FreeBuffers() { … }
void ConsumerIPCClientImpl::Flush(uint32_t timeout_ms,
FlushCallback callback,
FlushFlags flush_flags) { … }
void ConsumerIPCClientImpl::Detach(const std::string& key) { … }
void ConsumerIPCClientImpl::Attach(const std::string& key) { … }
void ConsumerIPCClientImpl::GetTraceStats() { … }
void ConsumerIPCClientImpl::ObserveEvents(uint32_t enabled_event_types) { … }
void ConsumerIPCClientImpl::QueryServiceState(
QueryServiceStateArgs args,
QueryServiceStateCallback callback) { … }
void ConsumerIPCClientImpl::OnQueryServiceStateResponse(
ipc::AsyncResult<protos::gen::QueryServiceStateResponse> response,
PendingQueryServiceRequests::iterator req_it) { … }
void ConsumerIPCClientImpl::QueryCapabilities(
QueryCapabilitiesCallback callback) { … }
void ConsumerIPCClientImpl::SaveTraceForBugreport(
SaveTraceForBugreportCallback callback) { … }
void ConsumerIPCClientImpl::CloneSession(TracingSessionID tsid,
CloneSessionArgs args) { … }
}