Files
engine/common/threads.h
T
Adam Barth dec24015d7 Add new platform message transport on Android (#3105)
This transport uses the Dart and JNI APIs directly instead of indirecting
through Mojo.
2016-10-07 12:05:43 -07:00

40 lines
1.0 KiB
C++

// Copyright 2016 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 FLUTTER_COMMON_THREADS_H_
#define FLUTTER_COMMON_THREADS_H_
#include "lib/ftl/tasks/task_runner.h"
namespace blink {
class Threads {
public:
Threads();
Threads(ftl::RefPtr<ftl::TaskRunner> platform,
ftl::RefPtr<ftl::TaskRunner> gpu,
ftl::RefPtr<ftl::TaskRunner> ui,
ftl::RefPtr<ftl::TaskRunner> io);
~Threads();
static const ftl::RefPtr<ftl::TaskRunner>& Platform();
static const ftl::RefPtr<ftl::TaskRunner>& Gpu();
static const ftl::RefPtr<ftl::TaskRunner>& UI();
static const ftl::RefPtr<ftl::TaskRunner>& IO();
static void Set(const Threads& settings);
private:
static const Threads& Get();
ftl::RefPtr<ftl::TaskRunner> platform_;
ftl::RefPtr<ftl::TaskRunner> gpu_;
ftl::RefPtr<ftl::TaskRunner> ui_;
ftl::RefPtr<ftl::TaskRunner> io_;
};
} // namespace blink
#endif // FLUTTER_COMMON_THREADS_H_