2016-07-26 19:02:50 +00:00
|
|
|
|
|
|
|
/*
|
|
|
|
* Copyright 2016 Google Inc.
|
|
|
|
*
|
|
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
|
|
* found in the LICENSE file.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef WindowContextFactory_win_DEFINED
|
|
|
|
#define WindowContextFactory_win_DEFINED
|
|
|
|
|
|
|
|
#include <Windows.h>
|
|
|
|
|
2019-08-01 20:21:49 +00:00
|
|
|
#include <memory>
|
|
|
|
|
2016-07-26 19:02:50 +00:00
|
|
|
namespace sk_app {
|
|
|
|
|
|
|
|
class WindowContext;
|
|
|
|
struct DisplayParams;
|
|
|
|
|
|
|
|
namespace window_context_factory {
|
|
|
|
|
2019-08-01 20:21:49 +00:00
|
|
|
std::unique_ptr<WindowContext> MakeVulkanForWin(HWND, const DisplayParams&);
|
2016-07-26 19:02:50 +00:00
|
|
|
|
2019-08-01 20:21:49 +00:00
|
|
|
std::unique_ptr<WindowContext> MakeGLForWin(HWND, const DisplayParams&);
|
2016-07-26 19:02:50 +00:00
|
|
|
|
2019-08-01 20:21:49 +00:00
|
|
|
std::unique_ptr<WindowContext> MakeANGLEForWin(HWND, const DisplayParams&);
|
2017-08-17 18:37:06 +00:00
|
|
|
|
2020-05-13 20:54:09 +00:00
|
|
|
#ifdef SK_DIRECT3D
|
|
|
|
std::unique_ptr<WindowContext> MakeD3D12ForWin(HWND, const DisplayParams&);
|
|
|
|
#endif
|
|
|
|
|
2019-08-02 19:04:52 +00:00
|
|
|
#ifdef SK_DAWN
|
|
|
|
std::unique_ptr<WindowContext> MakeDawnD3D12ForWin(HWND, const DisplayParams&);
|
|
|
|
#endif
|
|
|
|
|
2019-08-01 20:21:49 +00:00
|
|
|
std::unique_ptr<WindowContext> MakeRasterForWin(HWND, const DisplayParams&);
|
2016-07-27 15:50:12 +00:00
|
|
|
|
2016-07-26 19:02:50 +00:00
|
|
|
} // namespace window_context_factory
|
|
|
|
|
|
|
|
} // namespace sk_app
|
|
|
|
|
|
|
|
#endif
|