9b639cf2d6 2015-05-05 kinaba: /***********************************************************************\ 9b639cf2d6 2015-05-05 kinaba: * dxerr.d * 9b639cf2d6 2015-05-05 kinaba: * * 9b639cf2d6 2015-05-05 kinaba: * Windows API header module * 9b639cf2d6 2015-05-05 kinaba: * * 9b639cf2d6 2015-05-05 kinaba: * Placed into public domain * 9b639cf2d6 2015-05-05 kinaba: \***********************************************************************/ 9b639cf2d6 2015-05-05 kinaba: module win32.directx.dxerr; 9b639cf2d6 2015-05-05 kinaba: 9b639cf2d6 2015-05-05 kinaba: import win32.windows; 9b639cf2d6 2015-05-05 kinaba: 9b639cf2d6 2015-05-05 kinaba: pragma(lib, "dxerr.lib"); 9b639cf2d6 2015-05-05 kinaba: 9b639cf2d6 2015-05-05 kinaba: extern (Windows) { 9b639cf2d6 2015-05-05 kinaba: CHAR* DXGetErrorStringA(HRESULT hr); 9b639cf2d6 2015-05-05 kinaba: WCHAR* DXGetErrorStringW(HRESULT hr); 9b639cf2d6 2015-05-05 kinaba: CHAR* DXGetErrorDescriptionA(HRESULT hr); 9b639cf2d6 2015-05-05 kinaba: WCHAR* DXGetErrorDescriptionW(HRESULT hr); 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTraceA(CHAR* strFile, DWORD dwLine, HRESULT hr, CHAR* strMsg, 9b639cf2d6 2015-05-05 kinaba: BOOL bPopMsgBox); 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTraceW(CHAR* strFile, DWORD dwLine, HRESULT hr, WCHAR* strMsg, 9b639cf2d6 2015-05-05 kinaba: BOOL bPopMsgBox); 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: 9b639cf2d6 2015-05-05 kinaba: version (Unicode) { 9b639cf2d6 2015-05-05 kinaba: alias DXGetErrorStringW DXGetErrorString; 9b639cf2d6 2015-05-05 kinaba: alias DXGetErrorDescriptionW DXGetErrorDescription; 9b639cf2d6 2015-05-05 kinaba: alias DXTraceW DXTrace; 9b639cf2d6 2015-05-05 kinaba: } else { 9b639cf2d6 2015-05-05 kinaba: alias DXGetErrorStringA DXGetErrorString; 9b639cf2d6 2015-05-05 kinaba: alias DXGetErrorDescriptionA DXGetErrorDescription; 9b639cf2d6 2015-05-05 kinaba: alias DXTraceA DXTrace; 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: 9b639cf2d6 2015-05-05 kinaba: debug (dxerr) { 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTRACE_MSG(TCHAR* str) { 9b639cf2d6 2015-05-05 kinaba: return DXTrace(__FILE__, __LINE__, 0, str, false); 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { 9b639cf2d6 2015-05-05 kinaba: return DXTrace(__FILE__, __LINE__, hr, str, false); 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTRACE_ERR_MSGBOX(TCHAR* str, HRESULT hr) { 9b639cf2d6 2015-05-05 kinaba: return DXTrace(__FILE__, __LINE__, hr, str, true); 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: } else { 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTRACE_MSG(TCHAR* str) { 9b639cf2d6 2015-05-05 kinaba: return 0; 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { 9b639cf2d6 2015-05-05 kinaba: return hr; 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: HRESULT DXTRACE_ERR_MSGBOX(TCHAR* str, HRESULT hr) { 9b639cf2d6 2015-05-05 kinaba: return hr; 9b639cf2d6 2015-05-05 kinaba: } 9b639cf2d6 2015-05-05 kinaba: }