blob: 50284a1aa77bc585bc0c159b7fa5ca0144f1f216 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef BASE_TASK_TASK_SCHEDULER_CAN_SCHEDULE_SEQUENCE_OBSERVER_H_
#define BASE_TASK_TASK_SCHEDULER_CAN_SCHEDULE_SEQUENCE_OBSERVER_H_
#include "base/task/task_scheduler/sequence.h"
namespace base {
namespace internal {
class CanScheduleSequenceObserver {
public:
// Called when |sequence| can be scheduled. It is expected that
// TaskTracker::RunNextTask() will be called with |sequence| as argument after
// this is called.
virtual void OnCanScheduleSequence(scoped_refptr<Sequence> sequence) = 0;
protected:
virtual ~CanScheduleSequenceObserver() = default;
};
} // namespace internal
} // namespace base
#endif // BASE_TASK_TASK_SCHEDULER_CAN_SCHEDULE_SEQUENCE_OBSERVER_H_