CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
hrydgard

CoCalc provides the best real-time collaborative environment for Jupyter Notebooks, LaTeX documents, and SageMath, scalable from individual users to large groups and classes!

GitHub Repository: hrydgard/ppsspp
Path: blob/master/Common/GPU/thin3d_create.h
Views: 1401
1
#pragma once
2
3
#include <string>
4
#include <vector>
5
#include "Common/GPU/thin3d.h"
6
7
// Separated this stuff into its own file so we don't get Windows.h included if all we want is the thin3d declarations.
8
9
#ifdef _WIN32
10
#include "Common/CommonWindows.h"
11
#include <D3Dcommon.h>
12
struct IDirect3DDevice9;
13
struct IDirect3D9;
14
struct IDirect3DDevice9Ex;
15
struct IDirect3D9Ex;
16
struct ID3D11Device;
17
struct ID3D11DeviceContext;
18
struct ID3D11Device1;
19
struct ID3D11DeviceContext1;
20
struct IDXGISwapChain;
21
#endif
22
23
class VulkanContext;
24
25
namespace Draw {
26
27
DrawContext *T3DCreateGLContext(bool canChangeSwapInterval);
28
29
#ifdef _WIN32
30
DrawContext *T3DCreateDX9Context(IDirect3D9 *d3d, IDirect3D9Ex *d3dEx, int adapterId, IDirect3DDevice9 *device, IDirect3DDevice9Ex *deviceEx);
31
DrawContext *T3DCreateD3D11Context(ID3D11Device *device, ID3D11DeviceContext *context, ID3D11Device1 *device1, ID3D11DeviceContext1 *context1, IDXGISwapChain *swapChain, D3D_FEATURE_LEVEL featureLevel, HWND hWnd, const std::vector<std::string> &adapterNames, int maxInflightFrames);
32
#endif
33
34
DrawContext *T3DCreateVulkanContext(VulkanContext *context, bool useRenderThread);
35
36
} // namespace Draw
37
38