directx.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. #ifndef _directx_h
  2. #define _directx_h
  3. /* Include all of the DirectX 5.0 headers and adds any necessary tweaks */
  4. #include <windows.h>
  5. #include <mmsystem.h>
  6. #ifndef WIN32
  7. #define WIN32
  8. #endif
  9. #undef  WINNT
  10. /* Far pointers don't exist in 32-bit code */
  11. #ifndef FAR
  12. #define FAR
  13. #endif
  14. /* Error codes not yet included in Win32 API header files */
  15. #ifndef MAKE_HRESULT
  16. #define MAKE_HRESULT(sev,fac,code) 
  17. ((HRESULT)(((unsigned long)(sev)<<31) | ((unsigned long)(fac)<<16) | ((unsigned long)(code))))
  18. #endif
  19. #ifndef S_OK
  20. #define S_OK (HRESULT)0x00000000L
  21. #endif
  22. #ifndef SUCCEEDED
  23. #define SUCCEEDED(x) ((HRESULT)(x) >= 0)
  24. #endif
  25. #ifndef FAILED
  26. #define FAILED(x) ((HRESULT)(x)<0)
  27. #endif
  28. #ifndef E_FAIL
  29. #define E_FAIL (HRESULT)0x80000008L
  30. #endif
  31. #ifndef E_NOINTERFACE
  32. #define E_NOINTERFACE (HRESULT)0x80004002L
  33. #endif
  34. #ifndef E_OUTOFMEMORY
  35. #define E_OUTOFMEMORY (HRESULT)0x8007000EL
  36. #endif
  37. #ifndef E_INVALIDARG
  38. #define E_INVALIDARG (HRESULT)0x80070057L
  39. #endif
  40. #ifndef E_NOTIMPL
  41. #define E_NOTIMPL (HRESULT)0x80004001L
  42. #endif
  43. #ifndef REGDB_E_CLASSNOTREG
  44. #define REGDB_E_CLASSNOTREG (HRESULT)0x80040154L
  45. #endif
  46. /* Severity codes */
  47. #ifndef SEVERITY_ERROR
  48. #define SEVERITY_ERROR 1
  49. #endif
  50. /* Error facility codes */
  51. #ifndef FACILITY_WIN32
  52. #define FACILITY_WIN32 7
  53. #endif
  54. #ifndef FIELD_OFFSET
  55. #define FIELD_OFFSET(type, field)    ((LONG)&(((type *)0)->field))
  56. #endif
  57. /* DirectX headers (if it isn't included, I haven't tested it yet)
  58.  */
  59. /* We need these defines to mark what version of DirectX API we use */
  60. #define DIRECTDRAW_VERSION  0x0700
  61. #define DIRECTSOUND_VERSION 0x0500
  62. #define DIRECTINPUT_VERSION 0x0500
  63. #ifdef __GNUC__
  64. #define NONAMELESSUNION
  65. #endif
  66. #include <ddraw.h>
  67. #include <dsound.h>
  68. #include <dinput.h>
  69. #endif /* _directx_h */