#include "gpu/command_buffer/service/scheduler_sequence.h"
#include "base/task/single_thread_task_runner.h"
#include "gpu/command_buffer/service/scheduler.h"
#if DCHECK_IS_ON()
#include "third_party/abseil-cpp/absl/base/attributes.h"
#endif
namespace gpu {
namespace {
#if DCHECK_IS_ON()
ABSL_CONST_INIT thread_local bool schedule_task_disallowed = …;
#endif
}
ScopedAllowScheduleGpuTask::~ScopedAllowScheduleGpuTask() = default;
ScopedAllowScheduleGpuTask::ScopedAllowScheduleGpuTask()
#if DCHECK_IS_ON()
: … { … }
void SchedulerSequence::DefaultDisallowScheduleTaskOnCurrentThread() { … }
SchedulerSequence::SchedulerSequence(
Scheduler* scheduler,
scoped_refptr<base::SingleThreadTaskRunner> task_runner,
bool target_thread_is_always_available)
: … { … }
SchedulerSequence::~SchedulerSequence() { … }
SequenceId SchedulerSequence::GetSequenceId() { … }
bool SchedulerSequence::ShouldYield() { … }
void SchedulerSequence::ScheduleTask(base::OnceClosure task,
std::vector<SyncToken> sync_token_fences,
ReportingCallback report_callback) { … }
void SchedulerSequence::ScheduleOrRetainTask(
base::OnceClosure task,
std::vector<gpu::SyncToken> sync_token_fences,
ReportingCallback report_callback) { … }
void SchedulerSequence::ContinueTask(base::OnceClosure task) { … }
}