summaryrefslogtreecommitdiff
path: root/demo/common/dxerr.h
diff options
context:
space:
mode:
authorJason Maskell <[email protected]>2016-05-09 10:39:54 +0200
committerJason Maskell <[email protected]>2016-05-09 10:39:54 +0200
commit79b3462799c28af8ba586349bd671b1b56e72353 (patch)
tree3b06e36c390254c0dc7f3733a0d32af213d87293 /demo/common/dxerr.h
downloadwaveworks_archive-79b3462799c28af8ba586349bd671b1b56e72353.tar.xz
waveworks_archive-79b3462799c28af8ba586349bd671b1b56e72353.zip
Initial commit with PS4 and XBone stuff trimmed.
Diffstat (limited to 'demo/common/dxerr.h')
-rw-r--r--demo/common/dxerr.h78
1 files changed, 78 insertions, 0 deletions
diff --git a/demo/common/dxerr.h b/demo/common/dxerr.h
new file mode 100644
index 0000000..48a34c6
--- /dev/null
+++ b/demo/common/dxerr.h
@@ -0,0 +1,78 @@
+//--------------------------------------------------------------------------------------
+// File: DXErr.h
+//
+// DirectX Error Library
+//
+// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
+// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
+// PARTICULAR PURPOSE.
+//
+// Copyright (c) Microsoft Corporation. All rights reserved.
+//--------------------------------------------------------------------------------------
+
+// This version only supports UNICODE.
+
+#ifdef _MSC_VER
+#pragma once
+#endif
+
+#include <windows.h>
+#include <sal.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+//--------------------------------------------------------------------------------------
+// DXGetErrorString
+//--------------------------------------------------------------------------------------
+const WCHAR* WINAPI DXGetErrorStringW( _In_ HRESULT hr );
+
+#define DXGetErrorString DXGetErrorStringW
+
+//--------------------------------------------------------------------------------------
+// DXGetErrorDescription has to be modified to return a copy in a buffer rather than
+// the original static string.
+//--------------------------------------------------------------------------------------
+void WINAPI DXGetErrorDescriptionW( _In_ HRESULT hr, _Out_cap_(count) WCHAR* desc, _In_ size_t count );
+
+#define DXGetErrorDescription DXGetErrorDescriptionW
+
+//--------------------------------------------------------------------------------------
+// DXTrace
+//
+// Desc: Outputs a formatted error message to the debug stream
+//
+// Args: WCHAR* strFile The current file, typically passed in using the
+// __FILEW__ macro.
+// DWORD dwLine The current line number, typically passed in using the
+// __LINE__ macro.
+// HRESULT hr An HRESULT that will be traced to the debug stream.
+// CHAR* strMsg A string that will be traced to the debug stream (may be NULL)
+// BOOL bPopMsgBox If TRUE, then a message box will popup also containing the passed info.
+//
+// Return: The hr that was passed in.
+//--------------------------------------------------------------------------------------
+HRESULT WINAPI DXTraceW( _In_z_ const WCHAR* strFile, _In_ DWORD dwLine, _In_ HRESULT hr, _In_opt_ const WCHAR* strMsg, _In_ bool bPopMsgBox );
+
+#define DXTrace DXTraceW
+
+//--------------------------------------------------------------------------------------
+//
+// Helper macros
+//
+//--------------------------------------------------------------------------------------
+#if defined(DEBUG) || defined(_DEBUG)
+#define DXTRACE_MSG(str) DXTrace( __FILEW__, (DWORD)__LINE__, 0, str, false )
+#define DXTRACE_ERR(str,hr) DXTrace( __FILEW__, (DWORD)__LINE__, hr, str, false )
+#define DXTRACE_ERR_MSGBOX(str,hr) DXTrace( __FILEW__, (DWORD)__LINE__, hr, str, true )
+#else
+#define DXTRACE_MSG(str) (0L)
+#define DXTRACE_ERR(str,hr) (hr)
+#define DXTRACE_ERR_MSGBOX(str,hr) (hr)
+#endif
+
+#ifdef __cplusplus
+}
+#endif //__cplusplus