chromium/cc/raster/single_thread_task_graph_runner.h

// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CC_RASTER_SINGLE_THREAD_TASK_GRAPH_RUNNER_H_
#define CC_RASTER_SINGLE_THREAD_TASK_GRAPH_RUNNER_H_

#include <memory>
#include <string>

#include "base/synchronization/condition_variable.h"
#include "base/thread_annotations.h"
#include "base/threading/simple_thread.h"
#include "cc/raster/task_graph_runner.h"
#include "cc/raster/task_graph_work_queue.h"

namespace base {
class SimpleThread;
}

namespace cc {

// Runs TaskGraphs asynchronously using a single worker thread.
class CC_EXPORT SingleThreadTaskGraphRunner
    : public TaskGraphRunner,
      public base::DelegateSimpleThread::Delegate {};

}  // namespace cc

#endif  // CC_RASTER_SINGLE_THREAD_TASK_GRAPH_RUNNER_H_