• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 
2 /*
3  * Copyright 2016 Google Inc.
4  *
5  * Use of this source code is governed by a BSD-style license that can be
6  * found in the LICENSE file.
7  */
8 
9 #ifndef WindowContextFactory_win_DEFINED
10 #define WindowContextFactory_win_DEFINED
11 
12 #include <Windows.h>
13 
14 #include <memory>
15 
16 namespace sk_app {
17 
18 class WindowContext;
19 struct DisplayParams;
20 
21 namespace window_context_factory {
22 
23 std::unique_ptr<WindowContext> MakeVulkanForWin(HWND, const DisplayParams&);
24 
25 std::unique_ptr<WindowContext> MakeGLForWin(HWND, const DisplayParams&);
26 
27 std::unique_ptr<WindowContext> MakeANGLEForWin(HWND, const DisplayParams&);
28 
29 #ifdef SK_DIRECT3D
30 std::unique_ptr<WindowContext> MakeD3D12ForWin(HWND, const DisplayParams&);
31 #endif
32 
33 #ifdef SK_DAWN
34 std::unique_ptr<WindowContext> MakeDawnD3D12ForWin(HWND, const DisplayParams&);
35 #endif
36 
37 std::unique_ptr<WindowContext> MakeRasterForWin(HWND, const DisplayParams&);
38 
39 }  // namespace window_context_factory
40 
41 }  // namespace sk_app
42 
43 #endif
44