#include "services/tracing/public/cpp/background_tracing/background_tracing_agent_impl.h"
#include <memory>
#include "base/metrics/metrics_hashes.h"
#include "base/metrics/statistics_recorder.h"
#include "base/trace_event/trace_event.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "services/tracing/public/cpp/perfetto/macros.h"
#include "third_party/perfetto/protos/perfetto/trace/track_event/chrome_histogram_sample.pbzero.h"
namespace tracing {
BackgroundTracingAgentImpl::BackgroundTracingAgentImpl(
mojo::PendingRemote<mojom::BackgroundTracingAgentClient> client)
: … { … }
BackgroundTracingAgentImpl::~BackgroundTracingAgentImpl() = default;
void BackgroundTracingAgentImpl::SetUMACallback(
tracing::mojom::BackgroundTracingRulePtr rule,
const std::string& histogram_name,
int32_t histogram_lower_value,
int32_t histogram_upper_value) { … }
void BackgroundTracingAgentImpl::ClearUMACallback(
tracing::mojom::BackgroundTracingRulePtr rule) { … }
void BackgroundTracingAgentImpl::OnHistogramChanged(
const std::string& rule_id,
base::Histogram::Sample histogram_lower_value,
base::Histogram::Sample histogram_upper_value,
const char* histogram_name,
uint64_t name_hash,
base::Histogram::Sample actual_value) { … }
}