aboutsummaryrefslogtreecommitdiff
path: root/demo/d3d12/NvCoDxDebugUtil.cpp
diff options
context:
space:
mode:
authorMiles Macklin <[email protected]>2017-06-09 13:41:15 +1200
committerMiles Macklin <[email protected]>2017-06-09 13:41:15 +1200
commit688b5f42e9bfe498d7af7075d4d8f4429867f3a3 (patch)
tree7e0d0e7c95298f0418723abd92f61ac6e16b055e /demo/d3d12/NvCoDxDebugUtil.cpp
parentUpdate README.md (diff)
downloadflex-1.2.0.beta.1.tar.xz
flex-1.2.0.beta.1.zip
1.2.0.beta.11.2.0.beta.1
Diffstat (limited to 'demo/d3d12/NvCoDxDebugUtil.cpp')
-rw-r--r--demo/d3d12/NvCoDxDebugUtil.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/demo/d3d12/NvCoDxDebugUtil.cpp b/demo/d3d12/NvCoDxDebugUtil.cpp
new file mode 100644
index 0000000..b5ef17c
--- /dev/null
+++ b/demo/d3d12/NvCoDxDebugUtil.cpp
@@ -0,0 +1,32 @@
+/* Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
+* NVIDIA CORPORATION and its licensors retain all intellectual property
+* and proprietary rights in and to this software, related documentation
+* and any modifications thereto. Any use, reproduction, disclosure or
+* distribution of this software and related documentation without an express
+* license agreement from NVIDIA CORPORATION is strictly prohibited. */
+
+#include "NvCoDxDebugUtil.h"
+
+namespace nvidia {
+namespace Common {
+
+/* static */int DxDebugUtil::getDebugInterface(IDXGIDebug** debugOut)
+{
+ HMODULE module = GetModuleHandleA("Dxgidebug.dll");
+ if (module)
+ {
+ //WINAPI
+ typedef HRESULT(WINAPI *FuncType)(REFIID riid, void **ppDebug);
+ FARPROC funcAddr = GetProcAddress(module, "DXGIGetDebugInterface");
+
+ FuncType debugFunc = (FuncType)funcAddr;
+ if (debugFunc)
+ {
+ return debugFunc(__uuidof(IDXGIDebug), (void**)debugOut);
+ }
+ }
+ return NV_FAIL;
+}
+
+} // namespace Common
+} // namespace nvidia