aboutsummaryrefslogtreecommitdiff
path: root/src/deps/skia/include/gpu/d3d/GrD3DBackendContext.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/deps/skia/include/gpu/d3d/GrD3DBackendContext.h')
-rw-r--r--src/deps/skia/include/gpu/d3d/GrD3DBackendContext.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/deps/skia/include/gpu/d3d/GrD3DBackendContext.h b/src/deps/skia/include/gpu/d3d/GrD3DBackendContext.h
new file mode 100644
index 000000000..bb85e52e5
--- /dev/null
+++ b/src/deps/skia/include/gpu/d3d/GrD3DBackendContext.h
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2020 Google LLC
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#ifndef GrD3DBackendContext_DEFINED
+#define GrD3DBackendContext_DEFINED
+
+// GrD3DTypes.h includes d3d12.h, which in turn includes windows.h, which redefines many
+// common identifiers such as:
+// * interface
+// * small
+// * near
+// * far
+// * CreateSemaphore
+// * MemoryBarrier
+//
+// You should only include GrD3DBackendContext.h if you are prepared to rename those identifiers.
+#include "include/gpu/d3d/GrD3DTypes.h"
+
+#include "include/gpu/GrTypes.h"
+
+// The BackendContext contains all of the base D3D objects needed by the GrD3DGpu. The assumption
+// is that the client will set these up and pass them to the GrD3DGpu constructor.
+struct SK_API GrD3DBackendContext {
+ gr_cp<IDXGIAdapter1> fAdapter;
+ gr_cp<ID3D12Device> fDevice;
+ gr_cp<ID3D12CommandQueue> fQueue;
+ sk_sp<GrD3DMemoryAllocator> fMemoryAllocator;
+ GrProtected fProtectedContext = GrProtected::kNo;
+};
+
+#endif