// Copyright 2017 The Flutter 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_TASK_RUNNERS_H_ #define FLUTTER_COMMON_TASK_RUNNERS_H_ #include #include "lib/fxl/macros.h" #include "lib/fxl/tasks/task_runner.h" namespace blink { class TaskRunners { public: TaskRunners(std::string label, fxl::RefPtr platform, fxl::RefPtr gpu, fxl::RefPtr ui, fxl::RefPtr io); ~TaskRunners(); const std::string& GetLabel() const; fxl::RefPtr GetPlatformTaskRunner() const; fxl::RefPtr GetUITaskRunner() const; fxl::RefPtr GetIOTaskRunner() const; fxl::RefPtr GetGPUTaskRunner() const; bool IsValid() const; private: const std::string label_; fxl::RefPtr platform_; fxl::RefPtr gpu_; fxl::RefPtr ui_; fxl::RefPtr io_; }; } // namespace blink #endif // FLUTTER_COMMON_TASK_RUNNERS_H_