1 /***********************************************************************\ 2 * dxerr9.d * 3 * * 4 * Windows API header module * 5 * * 6 * Translated from MinGW Windows headers * 7 * * 8 * Placed into public domain * 9 \***********************************************************************/ 10 module win32.directx.dxerr9; 11 12 /* 13 dxerr9.h - Header file for the DirectX 9 Error API 14 15 Written by Filip Navara <xnavara@volny.cz> 16 Ported to D by James Pelcis <jpelcis@gmail.com> 17 18 This library is distributed in the hope that it will be useful, 19 but WITHOUT ANY WARRANTY; without even the implied warranty of 20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 21 22 */ 23 24 private import win32.windef; 25 26 extern (Windows) { 27 char* DXGetErrorString9A(HRESULT); 28 WCHAR* DXGetErrorString9W(HRESULT); 29 char* DXGetErrorDescription9A(HRESULT); 30 WCHAR* DXGetErrorDescription9W(HRESULT); 31 HRESULT DXTraceA(char*, DWORD, HRESULT, char*, BOOL); 32 HRESULT DXTraceW(char*, DWORD, HRESULT, WCHAR*, BOOL); 33 } 34 35 version (Unicode) { 36 alias DXGetErrorString9W DXGetErrorString9; 37 alias DXGetErrorDescription9W DXGetErrorDescription9; 38 alias DXTraceW DXTrace; 39 } else { 40 alias DXGetErrorString9A DXGetErrorString9; 41 alias DXGetErrorDescription9A DXGetErrorDescription9; 42 alias DXTraceA DXTrace; 43 } 44 45 debug (dxerr) { 46 HRESULT DXTRACE_MSG(TCHAR* str) { 47 return DXTrace(__FILE__, cast(DWORD)__LINE__, 0, str, FALSE); 48 } 49 50 HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { 51 return DXTrace(__FILE__, cast(DWORD)__LINE__, hr, str, FALSE); 52 } 53 54 HRESULT DXTRACE_ERR_NOMSGBOX(TCHAR* str, HRESULT hr) { 55 return DXTrace(__FILE__, cast(DWORD)__LINE__, hr, str, TRUE); 56 } 57 } else { 58 HRESULT DXTRACE_MSG(TCHAR* str) { 59 return 0; 60 } 61 62 HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { 63 return hr; 64 } 65 66 HRESULT DXTRACE_ERR_NOMSGBOX(TCHAR* str, HRESULT hr) { 67 return hr; 68 } 69 }