src/audio/directsound/directx.h
author Philipp Wiesemann <philipp.wiesemann@arcor.de>
Sat, 01 Jun 2013 21:09:36 +0200
changeset 7252 8ecb54eeaeec
parent 7191 75360622e65f
child 8616 ec011c16e2fd
permissions -rw-r--r--
Corrected indentation of license.
     1 
     2 #ifndef _directx_h
     3 #define _directx_h
     4 
     5 /* Include all of the DirectX 8.0 headers and adds any necessary tweaks */
     6 
     7 #include "../../core/windows/SDL_windows.h"
     8 #include <mmsystem.h>
     9 #ifndef WIN32
    10 #define WIN32
    11 #endif
    12 #undef  WINNT
    13 
    14 /* Far pointers don't exist in 32-bit code */
    15 #ifndef FAR
    16 #define FAR
    17 #endif
    18 
    19 /* Error codes not yet included in Win32 API header files */
    20 #ifndef MAKE_HRESULT
    21 #define MAKE_HRESULT(sev,fac,code) \
    22     ((HRESULT)(((unsigned long)(sev)<<31) | ((unsigned long)(fac)<<16) | ((unsigned long)(code))))
    23 #endif
    24 
    25 #ifndef S_OK
    26 #define S_OK        (HRESULT)0x00000000L
    27 #endif
    28 
    29 #ifndef SUCCEEDED
    30 #define SUCCEEDED(x)    ((HRESULT)(x) >= 0)
    31 #endif
    32 #ifndef FAILED
    33 #define FAILED(x)   ((HRESULT)(x)<0)
    34 #endif
    35 
    36 #ifndef E_FAIL
    37 #define E_FAIL      (HRESULT)0x80000008L
    38 #endif
    39 #ifndef E_NOINTERFACE
    40 #define E_NOINTERFACE   (HRESULT)0x80004002L
    41 #endif
    42 #ifndef E_OUTOFMEMORY
    43 #define E_OUTOFMEMORY   (HRESULT)0x8007000EL
    44 #endif
    45 #ifndef E_INVALIDARG
    46 #define E_INVALIDARG    (HRESULT)0x80070057L
    47 #endif
    48 #ifndef E_NOTIMPL
    49 #define E_NOTIMPL   (HRESULT)0x80004001L
    50 #endif
    51 #ifndef REGDB_E_CLASSNOTREG
    52 #define REGDB_E_CLASSNOTREG (HRESULT)0x80040154L
    53 #endif
    54 
    55 /* Severity codes */
    56 #ifndef SEVERITY_ERROR
    57 #define SEVERITY_ERROR  1
    58 #endif
    59 
    60 /* Error facility codes */
    61 #ifndef FACILITY_WIN32
    62 #define FACILITY_WIN32  7
    63 #endif
    64 
    65 #ifndef FIELD_OFFSET
    66 #define FIELD_OFFSET(type, field)    ((LONG)&(((type *)0)->field))
    67 #endif
    68 
    69 /* DirectX headers (if it isn't included, I haven't tested it yet)
    70  */
    71 /* We need these defines to mark what version of DirectX API we use */
    72 #define DIRECTDRAW_VERSION  0x0700
    73 #define DIRECTSOUND_VERSION 0x0800
    74 #define DIRECTINPUT_VERSION 0x0500
    75 
    76 #include <ddraw.h>
    77 #include <dsound.h>
    78 #include <dinput.h>
    79 
    80 #endif /* _directx_h */
    81 /* vi: set ts=4 sw=4 expandtab: */