#include "base/metrics/user_metrics.h"
#include <stddef.h>
#include <vector>
#include "base/functional/bind.h"
#include "base/lazy_instance.h"
#include "base/location.h"
#include "base/ranges/algorithm.h"
#include "base/threading/thread_checker.h"
#include "base/time/time.h"
#include "base/trace_event/base_tracing.h"
namespace base {
namespace {
LazyInstance<std::vector<ActionCallback>>::DestructorAtExit g_callbacks = …;
LazyInstance<scoped_refptr<SingleThreadTaskRunner>>::DestructorAtExit
g_task_runner = …;
}
void RecordAction(const UserMetricsAction& action) { … }
void RecordComputedAction(const std::string& action) { … }
void RecordComputedActionSince(const std::string& action,
TimeDelta time_since) { … }
void RecordComputedActionAt(const std::string& action, TimeTicks action_time) { … }
void AddActionCallback(const ActionCallback& callback) { … }
void RemoveActionCallback(const ActionCallback& callback) { … }
void SetRecordActionTaskRunner(
scoped_refptr<SingleThreadTaskRunner> task_runner) { … }
scoped_refptr<SingleThreadTaskRunner> GetRecordActionTaskRunner() { … }
}