blob: 3657a942fb3a52c948fe9167bb3b1925af830983 [file] [log] [blame]
/*
* Copyright 2023 Google LLC
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef WindowContextFactory_android_DEFINED
#define WindowContextFactory_android_DEFINED
#include <android/native_window_jni.h>
#include <memory>
#include "tools/sk_app/Window.h"
namespace skwindow {
class WindowContext;
class DisplayParams;
std::unique_ptr<WindowContext> MakeVulkanForAndroid(ANativeWindow*,
std::unique_ptr<const DisplayParams>);
std::unique_ptr<WindowContext> MakeGraphiteVulkanForAndroid(ANativeWindow*,
std::unique_ptr<const DisplayParams>);
std::unique_ptr<WindowContext> MakeGraphiteDawnForAndroid(ANativeWindow*,
std::unique_ptr<const DisplayParams>,
sk_app::Window::BackendType backendType);
std::unique_ptr<WindowContext> MakeGLForAndroid(ANativeWindow*,
std::unique_ptr<const DisplayParams>);
std::unique_ptr<WindowContext> MakeRasterForAndroid(ANativeWindow*,
std::unique_ptr<const DisplayParams>);
} // namespace skwindow
#endif