// Copyright 2021 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef GPU_COMMAND_BUFFER_SERVICE_SCHEDULER_TASK_RUNNER_H_ #define GPU_COMMAND_BUFFER_SERVICE_SCHEDULER_TASK_RUNNER_H_ #include "base/memory/raw_ref.h" #include "base/synchronization/lock.h" #include "base/task/sequenced_task_runner.h" #include "gpu/command_buffer/service/sequence_id.h" #include "gpu/gpu_export.h" namespace gpu { class Scheduler; // A SequencedTaskRunner implementation to abstract task execution for a // specific SequenceId on the GPU Scheduler. This object does not support // delayed tasks, because the underlying Scheduler implementation does not // support scheduling delayed tasks. Also note that tasks run by this object do // not support running nested RunLoops. class GPU_EXPORT SchedulerTaskRunner : public base::SequencedTaskRunner { … }; } // namespace gpu #endif // GPU_COMMAND_BUFFER_SERVICE_SCHEDULER_TASK_RUNNER_H_