#include "third_party/webrtc_overrides/low_precision_timer.h"
#include <optional>
#include "base/check.h"
#include "base/synchronization/lock.h"
#include "base/task/sequenced_task_runner.h"
#include "third_party/webrtc_overrides/task_queue_factory.h"
#include "third_party/webrtc_overrides/timer_based_tick_provider.h"
namespace blink {
LowPrecisionTimer::SchedulableCallback::SchedulableCallback(
scoped_refptr<base::SequencedTaskRunner> task_runner,
base::RepeatingCallback<void()> callback,
base::TimeDelta repeated_delay)
: … { … }
LowPrecisionTimer::SchedulableCallback::~SchedulableCallback() { … }
void LowPrecisionTimer::SchedulableCallback::Schedule(
base::TimeTicks scheduled_time) { … }
bool LowPrecisionTimer::SchedulableCallback::IsScheduled() { … }
base::TimeTicks LowPrecisionTimer::SchedulableCallback::Inactivate() { … }
void LowPrecisionTimer::SchedulableCallback::MaybeRun() { … }
LowPrecisionTimer::LowPrecisionTimer(
scoped_refptr<base::SequencedTaskRunner> task_runner,
base::RepeatingCallback<void()> callback)
: … { … }
LowPrecisionTimer::~LowPrecisionTimer() { … }
void LowPrecisionTimer::Shutdown() { … }
void LowPrecisionTimer::StartOneShot(base::TimeDelta delay) { … }
void LowPrecisionTimer::StartRepeating(base::TimeDelta delay) { … }
bool LowPrecisionTimer::IsActive() { … }
void LowPrecisionTimer::Stop() { … }
void LowPrecisionTimer::ScheduleCallback(base::TimeTicks scheduled_time) { … }
void LowPrecisionTimer::RescheduleCallback() { … }
void LowPrecisionTimer::MoveToNewTaskRunner(
scoped_refptr<base::SequencedTaskRunner> task_runner) { … }
}