ReactOS  0.4.13-dev-242-g611e6d7
dinput.h File Reference
#include <objbase.h>
Include dependency graph for dinput.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  DIDEVICEOBJECTINSTANCE_DX3A
 
struct  DIDEVICEOBJECTINSTANCE_DX3W
 
struct  DIDEVICEOBJECTINSTANCEA
 
struct  DIDEVICEOBJECTINSTANCEW
 
struct  DIDEVICEINSTANCE_DX3A
 
struct  DIDEVICEINSTANCE_DX3W
 
struct  DIDEVICEINSTANCEA
 
struct  DIDEVICEINSTANCEW
 
struct  DIDEVICEOBJECTDATA_DX3
 
struct  DIDEVICEOBJECTDATA
 
struct  _DIOBJECTDATAFORMAT
 
struct  _DIDATAFORMAT
 
struct  DIPROPHEADER
 
struct  DIPROPDWORD
 
struct  DIPROPRANGE
 
struct  DIPROPCAL
 
struct  DIPROPGUIDANDPATH
 
struct  DIPROPSTRING
 
struct  DIDEVCAPS_DX3
 
struct  DIDEVCAPS
 
struct  DICONSTANTFORCE
 
struct  DIRAMPFORCE
 
struct  DIPERIODIC
 
struct  DICONDITION
 
struct  DICUSTOMFORCE
 
struct  DIENVELOPE
 
struct  DIEFFECT_DX5
 
struct  DIEFFECT
 
struct  DIEFFECTINFOA
 
struct  DIEFFECTINFOW
 
struct  DIEFFESCAPE
 
struct  DIJOYSTATE
 
struct  DIJOYSTATE2
 
struct  DIFILEEFFECT
 
struct  _DIACTIONA
 
struct  _DIACTIONW
 
struct  _DIACTIONFORMATA
 
struct  _DIACTIONFORMATW
 
struct  _DICOLORSET
 
struct  _DICONFIGUREDEVICESPARAMSA
 
struct  _DICONFIGUREDEVICESPARAMSW
 
struct  _DIDEVICEIMAGEINFOA
 
struct  _DIDEVICEIMAGEINFOW
 
struct  _DIDEVICEIMAGEINFOHEADERA
 
struct  _DIDEVICEIMAGEINFOHEADERW
 
struct  DIMOUSESTATE
 
struct  DIMOUSESTATE2
 

Macros

#define COM_NO_WINDOWS_H
 
#define DIRECTINPUT_VERSION   0x0800
 
#define IID_IDirectInput   WINELIB_NAME_AW(IID_IDirectInput)
 
#define IID_IDirectInput2   WINELIB_NAME_AW(IID_IDirectInput2)
 
#define IID_IDirectInput7   WINELIB_NAME_AW(IID_IDirectInput7)
 
#define IID_IDirectInput8   WINELIB_NAME_AW(IID_IDirectInput8)
 
#define IID_IDirectInputDevice   WINELIB_NAME_AW(IID_IDirectInputDevice)
 
#define IID_IDirectInputDevice2   WINELIB_NAME_AW(IID_IDirectInputDevice2)
 
#define IID_IDirectInputDevice7   WINELIB_NAME_AW(IID_IDirectInputDevice7)
 
#define IID_IDirectInputDevice8   WINELIB_NAME_AW(IID_IDirectInputDevice8)
 
#define DI_OK   S_OK
 
#define DI_NOTATTACHED   S_FALSE
 
#define DI_BUFFEROVERFLOW   S_FALSE
 
#define DI_PROPNOEFFECT   S_FALSE
 
#define DI_NOEFFECT   S_FALSE
 
#define DI_POLLEDDEVICE   ((HRESULT)0x00000002)
 
#define DI_DOWNLOADSKIPPED   ((HRESULT)0x00000003)
 
#define DI_EFFECTRESTARTED   ((HRESULT)0x00000004)
 
#define DI_TRUNCATED   ((HRESULT)0x00000008)
 
#define DI_SETTINGSNOTSAVED   ((HRESULT)0x0000000B)
 
#define DI_TRUNCATEDANDRESTARTED   ((HRESULT)0x0000000C)
 
#define DI_WRITEPROTECT   ((HRESULT)0x00000013)
 
#define DIERR_OLDDIRECTINPUTVERSION   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_OLD_WIN_VERSION)
 
#define DIERR_BETADIRECTINPUTVERSION   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_RMODE_APP)
 
#define DIERR_BADDRIVERVER   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_BAD_DRIVER_LEVEL)
 
#define DIERR_DEVICENOTREG   REGDB_E_CLASSNOTREG
 
#define DIERR_NOTFOUND   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_FILE_NOT_FOUND)
 
#define DIERR_OBJECTNOTFOUND   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_FILE_NOT_FOUND)
 
#define DIERR_INVALIDPARAM   E_INVALIDARG
 
#define DIERR_NOINTERFACE   E_NOINTERFACE
 
#define DIERR_GENERIC   E_FAIL
 
#define DIERR_OUTOFMEMORY   E_OUTOFMEMORY
 
#define DIERR_UNSUPPORTED   E_NOTIMPL
 
#define DIERR_NOTINITIALIZED   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_READY)
 
#define DIERR_ALREADYINITIALIZED   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_ALREADY_INITIALIZED)
 
#define DIERR_NOAGGREGATION   CLASS_E_NOAGGREGATION
 
#define DIERR_OTHERAPPHASPRIO   E_ACCESSDENIED
 
#define DIERR_INPUTLOST   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_READ_FAULT)
 
#define DIERR_ACQUIRED   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_BUSY)
 
#define DIERR_NOTACQUIRED   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_INVALID_ACCESS)
 
#define DIERR_READONLY   E_ACCESSDENIED
 
#define DIERR_HANDLEEXISTS   E_ACCESSDENIED
 
#define E_PENDING   0x8000000AL
 
#define DIERR_INSUFFICIENTPRIVS   0x80040200L
 
#define DIERR_DEVICEFULL   0x80040201L
 
#define DIERR_MOREDATA   0x80040202L
 
#define DIERR_NOTDOWNLOADED   0x80040203L
 
#define DIERR_HASEFFECTS   0x80040204L
 
#define DIERR_NOTEXCLUSIVEACQUIRED   0x80040205L
 
#define DIERR_INCOMPLETEEFFECT   0x80040206L
 
#define DIERR_NOTBUFFERED   0x80040207L
 
#define DIERR_EFFECTPLAYING   0x80040208L
 
#define DIERR_UNPLUGGED   0x80040209L
 
#define DIERR_REPORTFULL   0x8004020AL
 
#define DIERR_MAPFILEFAIL   0x8004020BL
 
#define DIENUM_STOP   0
 
#define DIENUM_CONTINUE   1
 
#define DIEDFL_ALLDEVICES   0x00000000
 
#define DIEDFL_ATTACHEDONLY   0x00000001
 
#define DIEDFL_FORCEFEEDBACK   0x00000100
 
#define DIEDFL_INCLUDEALIASES   0x00010000
 
#define DIEDFL_INCLUDEPHANTOMS   0x00020000
 
#define DIEDFL_INCLUDEHIDDEN   0x00040000
 
#define DIDEVTYPE_DEVICE   1
 
#define DIDEVTYPE_MOUSE   2
 
#define DIDEVTYPE_KEYBOARD   3
 
#define DIDEVTYPE_JOYSTICK   4
 
#define DIDEVTYPE_HID   0x00010000
 
#define DI8DEVCLASS_ALL   0
 
#define DI8DEVCLASS_DEVICE   1
 
#define DI8DEVCLASS_POINTER   2
 
#define DI8DEVCLASS_KEYBOARD   3
 
#define DI8DEVCLASS_GAMECTRL   4
 
#define DI8DEVTYPE_DEVICE   0x11
 
#define DI8DEVTYPE_MOUSE   0x12
 
#define DI8DEVTYPE_KEYBOARD   0x13
 
#define DI8DEVTYPE_JOYSTICK   0x14
 
#define DI8DEVTYPE_GAMEPAD   0x15
 
#define DI8DEVTYPE_DRIVING   0x16
 
#define DI8DEVTYPE_FLIGHT   0x17
 
#define DI8DEVTYPE_1STPERSON   0x18
 
#define DI8DEVTYPE_DEVICECTRL   0x19
 
#define DI8DEVTYPE_SCREENPOINTER   0x1A
 
#define DI8DEVTYPE_REMOTE   0x1B
 
#define DI8DEVTYPE_SUPPLEMENTAL   0x1C
 
#define DIDEVTYPEMOUSE_UNKNOWN   1
 
#define DIDEVTYPEMOUSE_TRADITIONAL   2
 
#define DIDEVTYPEMOUSE_FINGERSTICK   3
 
#define DIDEVTYPEMOUSE_TOUCHPAD   4
 
#define DIDEVTYPEMOUSE_TRACKBALL   5
 
#define DIDEVTYPEKEYBOARD_UNKNOWN   0
 
#define DIDEVTYPEKEYBOARD_PCXT   1
 
#define DIDEVTYPEKEYBOARD_OLIVETTI   2
 
#define DIDEVTYPEKEYBOARD_PCAT   3
 
#define DIDEVTYPEKEYBOARD_PCENH   4
 
#define DIDEVTYPEKEYBOARD_NOKIA1050   5
 
#define DIDEVTYPEKEYBOARD_NOKIA9140   6
 
#define DIDEVTYPEKEYBOARD_NEC98   7
 
#define DIDEVTYPEKEYBOARD_NEC98LAPTOP   8
 
#define DIDEVTYPEKEYBOARD_NEC98106   9
 
#define DIDEVTYPEKEYBOARD_JAPAN106   10
 
#define DIDEVTYPEKEYBOARD_JAPANAX   11
 
#define DIDEVTYPEKEYBOARD_J3100   12
 
#define DIDEVTYPEJOYSTICK_UNKNOWN   1
 
#define DIDEVTYPEJOYSTICK_TRADITIONAL   2
 
#define DIDEVTYPEJOYSTICK_FLIGHTSTICK   3
 
#define DIDEVTYPEJOYSTICK_GAMEPAD   4
 
#define DIDEVTYPEJOYSTICK_RUDDER   5
 
#define DIDEVTYPEJOYSTICK_WHEEL   6
 
#define DIDEVTYPEJOYSTICK_HEADTRACKER   7
 
#define DI8DEVTYPEMOUSE_UNKNOWN   1
 
#define DI8DEVTYPEMOUSE_TRADITIONAL   2
 
#define DI8DEVTYPEMOUSE_FINGERSTICK   3
 
#define DI8DEVTYPEMOUSE_TOUCHPAD   4
 
#define DI8DEVTYPEMOUSE_TRACKBALL   5
 
#define DI8DEVTYPEMOUSE_ABSOLUTE   6
 
#define DI8DEVTYPEKEYBOARD_UNKNOWN   0
 
#define DI8DEVTYPEKEYBOARD_PCXT   1
 
#define DI8DEVTYPEKEYBOARD_OLIVETTI   2
 
#define DI8DEVTYPEKEYBOARD_PCAT   3
 
#define DI8DEVTYPEKEYBOARD_PCENH   4
 
#define DI8DEVTYPEKEYBOARD_NOKIA1050   5
 
#define DI8DEVTYPEKEYBOARD_NOKIA9140   6
 
#define DI8DEVTYPEKEYBOARD_NEC98   7
 
#define DI8DEVTYPEKEYBOARD_NEC98LAPTOP   8
 
#define DI8DEVTYPEKEYBOARD_NEC98106   9
 
#define DI8DEVTYPEKEYBOARD_JAPAN106   10
 
#define DI8DEVTYPEKEYBOARD_JAPANAX   11
 
#define DI8DEVTYPEKEYBOARD_J3100   12
 
#define DI8DEVTYPE_LIMITEDGAMESUBTYPE   1
 
#define DI8DEVTYPEJOYSTICK_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE
 
#define DI8DEVTYPEJOYSTICK_STANDARD   2
 
#define DI8DEVTYPEGAMEPAD_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE
 
#define DI8DEVTYPEGAMEPAD_STANDARD   2
 
#define DI8DEVTYPEGAMEPAD_TILT   3
 
#define DI8DEVTYPEDRIVING_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE
 
#define DI8DEVTYPEDRIVING_COMBINEDPEDALS   2
 
#define DI8DEVTYPEDRIVING_DUALPEDALS   3
 
#define DI8DEVTYPEDRIVING_THREEPEDALS   4
 
#define DI8DEVTYPEDRIVING_HANDHELD   5
 
#define DI8DEVTYPEFLIGHT_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE
 
#define DI8DEVTYPEFLIGHT_STICK   2
 
#define DI8DEVTYPEFLIGHT_YOKE   3
 
#define DI8DEVTYPEFLIGHT_RC   4
 
#define DI8DEVTYPE1STPERSON_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE
 
#define DI8DEVTYPE1STPERSON_UNKNOWN   2
 
#define DI8DEVTYPE1STPERSON_SIXDOF   3
 
#define DI8DEVTYPE1STPERSON_SHOOTER   4
 
#define DI8DEVTYPESCREENPTR_UNKNOWN   2
 
#define DI8DEVTYPESCREENPTR_LIGHTGUN   3
 
#define DI8DEVTYPESCREENPTR_LIGHTPEN   4
 
#define DI8DEVTYPESCREENPTR_TOUCH   5
 
#define DI8DEVTYPEREMOTE_UNKNOWN   2
 
#define DI8DEVTYPEDEVICECTRL_UNKNOWN   2
 
#define DI8DEVTYPEDEVICECTRL_COMMSSELECTION   3
 
#define DI8DEVTYPEDEVICECTRL_COMMSSELECTION_HARDWIRED   4
 
#define DI8DEVTYPESUPPLEMENTAL_UNKNOWN   2
 
#define DI8DEVTYPESUPPLEMENTAL_2NDHANDCONTROLLER   3
 
#define DI8DEVTYPESUPPLEMENTAL_HEADTRACKER   4
 
#define DI8DEVTYPESUPPLEMENTAL_HANDTRACKER   5
 
#define DI8DEVTYPESUPPLEMENTAL_SHIFTSTICKGATE   6
 
#define DI8DEVTYPESUPPLEMENTAL_SHIFTER   7
 
#define DI8DEVTYPESUPPLEMENTAL_THROTTLE   8
 
#define DI8DEVTYPESUPPLEMENTAL_SPLITTHROTTLE   9
 
#define DI8DEVTYPESUPPLEMENTAL_COMBINEDPEDALS   10
 
#define DI8DEVTYPESUPPLEMENTAL_DUALPEDALS   11
 
#define DI8DEVTYPESUPPLEMENTAL_THREEPEDALS   12
 
#define DI8DEVTYPESUPPLEMENTAL_RUDDERPEDALS   13
 
#define GET_DIDEVICE_TYPE(dwDevType)   LOBYTE(dwDevType)
 
#define GET_DIDEVICE_SUBTYPE(dwDevType)   HIBYTE(dwDevType)
 
#define DIEDBS_MAPPEDPRI1   0x00000001
 
#define DIEDBS_MAPPEDPRI2   0x00000002
 
#define DIEDBS_RECENTDEVICE   0x00000010
 
#define DIEDBS_NEWDEVICE   0x00000020
 
#define DIEDBSFL_ATTACHEDONLY   0x00000000
 
#define DIEDBSFL_THISUSER   0x00000010
 
#define DIEDBSFL_FORCEFEEDBACK   DIEDFL_FORCEFEEDBACK
 
#define DIEDBSFL_AVAILABLEDEVICES   0x00001000
 
#define DIEDBSFL_MULTIMICEKEYBOARDS   0x00002000
 
#define DIEDBSFL_NONGAMINGDEVICES   0x00004000
 
#define DIEDBSFL_VALID   0x00007110
 
#define DIK_ESCAPE   0x01
 
#define DIK_1   0x02
 
#define DIK_2   0x03
 
#define DIK_3   0x04
 
#define DIK_4   0x05
 
#define DIK_5   0x06
 
#define DIK_6   0x07
 
#define DIK_7   0x08
 
#define DIK_8   0x09
 
#define DIK_9   0x0A
 
#define DIK_0   0x0B
 
#define DIK_MINUS   0x0C /* - on main keyboard */
 
#define DIK_EQUALS   0x0D
 
#define DIK_BACK   0x0E /* backspace */
 
#define DIK_TAB   0x0F
 
#define DIK_Q   0x10
 
#define DIK_W   0x11
 
#define DIK_E   0x12
 
#define DIK_R   0x13
 
#define DIK_T   0x14
 
#define DIK_Y   0x15
 
#define DIK_U   0x16
 
#define DIK_I   0x17
 
#define DIK_O   0x18
 
#define DIK_P   0x19
 
#define DIK_LBRACKET   0x1A
 
#define DIK_RBRACKET   0x1B
 
#define DIK_RETURN   0x1C /* Enter on main keyboard */
 
#define DIK_LCONTROL   0x1D
 
#define DIK_A   0x1E
 
#define DIK_S   0x1F
 
#define DIK_D   0x20
 
#define DIK_F   0x21
 
#define DIK_G   0x22
 
#define DIK_H   0x23
 
#define DIK_J   0x24
 
#define DIK_K   0x25
 
#define DIK_L   0x26
 
#define DIK_SEMICOLON   0x27
 
#define DIK_APOSTROPHE   0x28
 
#define DIK_GRAVE   0x29 /* accent grave */
 
#define DIK_LSHIFT   0x2A
 
#define DIK_BACKSLASH   0x2B
 
#define DIK_Z   0x2C
 
#define DIK_X   0x2D
 
#define DIK_C   0x2E
 
#define DIK_V   0x2F
 
#define DIK_B   0x30
 
#define DIK_N   0x31
 
#define DIK_M   0x32
 
#define DIK_COMMA   0x33
 
#define DIK_PERIOD   0x34 /* . on main keyboard */
 
#define DIK_SLASH   0x35 /* / on main keyboard */
 
#define DIK_RSHIFT   0x36
 
#define DIK_MULTIPLY   0x37 /* * on numeric keypad */
 
#define DIK_LMENU   0x38 /* left Alt */
 
#define DIK_SPACE   0x39
 
#define DIK_CAPITAL   0x3A
 
#define DIK_F1   0x3B
 
#define DIK_F2   0x3C
 
#define DIK_F3   0x3D
 
#define DIK_F4   0x3E
 
#define DIK_F5   0x3F
 
#define DIK_F6   0x40
 
#define DIK_F7   0x41
 
#define DIK_F8   0x42
 
#define DIK_F9   0x43
 
#define DIK_F10   0x44
 
#define DIK_NUMLOCK   0x45
 
#define DIK_SCROLL   0x46 /* Scroll Lock */
 
#define DIK_NUMPAD7   0x47
 
#define DIK_NUMPAD8   0x48
 
#define DIK_NUMPAD9   0x49
 
#define DIK_SUBTRACT   0x4A /* - on numeric keypad */
 
#define DIK_NUMPAD4   0x4B
 
#define DIK_NUMPAD5   0x4C
 
#define DIK_NUMPAD6   0x4D
 
#define DIK_ADD   0x4E /* + on numeric keypad */
 
#define DIK_NUMPAD1   0x4F
 
#define DIK_NUMPAD2   0x50
 
#define DIK_NUMPAD3   0x51
 
#define DIK_NUMPAD0   0x52
 
#define DIK_DECIMAL   0x53 /* . on numeric keypad */
 
#define DIK_F11   0x57
 
#define DIK_F12   0x58
 
#define DIK_F13   0x64 /* (NEC PC98) */
 
#define DIK_F14   0x65 /* (NEC PC98) */
 
#define DIK_F15   0x66 /* (NEC PC98) */
 
#define DIK_KANA   0x70 /* (Japanese keyboard) */
 
#define DIK_CONVERT   0x79 /* (Japanese keyboard) */
 
#define DIK_NOCONVERT   0x7B /* (Japanese keyboard) */
 
#define DIK_YEN   0x7D /* (Japanese keyboard) */
 
#define DIK_NUMPADEQUALS   0x8D /* = on numeric keypad (NEC PC98) */
 
#define DIK_CIRCUMFLEX   0x90 /* (Japanese keyboard) */
 
#define DIK_AT   0x91 /* (NEC PC98) */
 
#define DIK_COLON   0x92 /* (NEC PC98) */
 
#define DIK_UNDERLINE   0x93 /* (NEC PC98) */
 
#define DIK_KANJI   0x94 /* (Japanese keyboard) */
 
#define DIK_STOP   0x95 /* (NEC PC98) */
 
#define DIK_AX   0x96 /* (Japan AX) */
 
#define DIK_UNLABELED   0x97 /* (J3100) */
 
#define DIK_NUMPADENTER   0x9C /* Enter on numeric keypad */
 
#define DIK_RCONTROL   0x9D
 
#define DIK_NUMPADCOMMA   0xB3 /* , on numeric keypad (NEC PC98) */
 
#define DIK_DIVIDE   0xB5 /* / on numeric keypad */
 
#define DIK_SYSRQ   0xB7
 
#define DIK_RMENU   0xB8 /* right Alt */
 
#define DIK_PAUSE   0xC5 /* Pause */
 
#define DIK_HOME   0xC7 /* Home on arrow keypad */
 
#define DIK_UP   0xC8 /* UpArrow on arrow keypad */
 
#define DIK_PRIOR   0xC9 /* PgUp on arrow keypad */
 
#define DIK_LEFT   0xCB /* LeftArrow on arrow keypad */
 
#define DIK_RIGHT   0xCD /* RightArrow on arrow keypad */
 
#define DIK_END   0xCF /* End on arrow keypad */
 
#define DIK_DOWN   0xD0 /* DownArrow on arrow keypad */
 
#define DIK_NEXT   0xD1 /* PgDn on arrow keypad */
 
#define DIK_INSERT   0xD2 /* Insert on arrow keypad */
 
#define DIK_DELETE   0xD3 /* Delete on arrow keypad */
 
#define DIK_LWIN   0xDB /* Left Windows key */
 
#define DIK_RWIN   0xDC /* Right Windows key */
 
#define DIK_APPS   0xDD /* AppMenu key */
 
#define DIK_POWER   0xDE
 
#define DIK_SLEEP   0xDF
 
#define DIK_BACKSPACE   DIK_BACK /* backspace */
 
#define DIK_NUMPADSTAR   DIK_MULTIPLY /* * on numeric keypad */
 
#define DIK_LALT   DIK_LMENU /* left Alt */
 
#define DIK_CAPSLOCK   DIK_CAPITAL /* CapsLock */
 
#define DIK_NUMPADMINUS   DIK_SUBTRACT /* - on numeric keypad */
 
#define DIK_NUMPADPLUS   DIK_ADD /* + on numeric keypad */
 
#define DIK_NUMPADPERIOD   DIK_DECIMAL /* . on numeric keypad */
 
#define DIK_NUMPADSLASH   DIK_DIVIDE /* / on numeric keypad */
 
#define DIK_RALT   DIK_RMENU /* right Alt */
 
#define DIK_UPARROW   DIK_UP /* UpArrow on arrow keypad */
 
#define DIK_PGUP   DIK_PRIOR /* PgUp on arrow keypad */
 
#define DIK_LEFTARROW   DIK_LEFT /* LeftArrow on arrow keypad */
 
#define DIK_RIGHTARROW   DIK_RIGHT /* RightArrow on arrow keypad */
 
#define DIK_DOWNARROW   DIK_DOWN /* DownArrow on arrow keypad */
 
#define DIK_PGDN   DIK_NEXT /* PgDn on arrow keypad */
 
#define DIKEYBOARD_ESCAPE   (DIK_ESCAPE | 0x81000400)
 
#define DIKEYBOARD_1   (DIK_1 | 0x81000400)
 
#define DIKEYBOARD_2   (DIK_2 | 0x81000400)
 
#define DIKEYBOARD_3   (DIK_3 | 0x81000400)
 
#define DIKEYBOARD_4   (DIK_4 | 0x81000400)
 
#define DIKEYBOARD_5   (DIK_5 | 0x81000400)
 
#define DIKEYBOARD_6   (DIK_6 | 0x81000400)
 
#define DIKEYBOARD_7   (DIK_7 | 0x81000400)
 
#define DIKEYBOARD_8   (DIK_8 | 0x81000400)
 
#define DIKEYBOARD_9   (DIK_9 | 0x81000400)
 
#define DIKEYBOARD_0   (DIK_0 | 0x81000400)
 
#define DIKEYBOARD_MINUS   (DIK_MINUS | 0x81000400)
 
#define DIKEYBOARD_EQUALS   (DIK_EQUALS | 0x81000400)
 
#define DIKEYBOARD_BACK   (DIK_BACK | 0x81000400)
 
#define DIKEYBOARD_TAB   (DIK_TAB | 0x81000400)
 
#define DIKEYBOARD_Q   (DIK_Q | 0x81000400)
 
#define DIKEYBOARD_W   (DIK_W | 0x81000400)
 
#define DIKEYBOARD_E   (DIK_E | 0x81000400)
 
#define DIKEYBOARD_R   (DIK_R | 0x81000400)
 
#define DIKEYBOARD_T   (DIK_T | 0x81000400)
 
#define DIKEYBOARD_Y   (DIK_Y | 0x81000400)
 
#define DIKEYBOARD_U   (DIK_U | 0x81000400)
 
#define DIKEYBOARD_I   (DIK_I | 0x81000400)
 
#define DIKEYBOARD_O   (DIK_O | 0x81000400)
 
#define DIKEYBOARD_P   (DIK_P | 0x81000400)
 
#define DIKEYBOARD_LBRACKET   (DIK_LBRACKET | 0x81000400)
 
#define DIKEYBOARD_RBRACKET   (DIK_RBRACKET | 0x81000400)
 
#define DIKEYBOARD_RETURN   (DIK_RETURN | 0x81000400)
 
#define DIKEYBOARD_LCONTROL   (DIK_LCONTROL | 0x81000400)
 
#define DIKEYBOARD_A   (DIK_A | 0x81000400)
 
#define DIKEYBOARD_S   (DIK_S | 0x81000400)
 
#define DIKEYBOARD_D   (DIK_D | 0x81000400)
 
#define DIKEYBOARD_F   (DIK_F | 0x81000400)
 
#define DIKEYBOARD_G   (DIK_G | 0x81000400)
 
#define DIKEYBOARD_H   (DIK_H | 0x81000400)
 
#define DIKEYBOARD_J   (DIK_J | 0x81000400)
 
#define DIKEYBOARD_K   (DIK_K | 0x81000400)
 
#define DIKEYBOARD_L   (DIK_L | 0x81000400)
 
#define DIKEYBOARD_SEMICOLON   (DIK_SEMICOLON | 0x81000400)
 
#define DIKEYBOARD_APOSTROPHE   (DIK_APOSTROPHE | 0x81000400)
 
#define DIKEYBOARD_GRAVE   (DIK_GRAVE | 0x81000400)
 
#define DIKEYBOARD_LSHIFT   (DIK_LSHIFT | 0x81000400)
 
#define DIKEYBOARD_BACKSLASH   (DIK_BACKSLASH | 0x81000400)
 
#define DIKEYBOARD_Z   (DIK_Z | 0x81000400)
 
#define DIKEYBOARD_X   (DIK_X | 0x81000400)
 
#define DIKEYBOARD_C   (DIK_C | 0x81000400)
 
#define DIKEYBOARD_V   (DIK_V | 0x81000400)
 
#define DIKEYBOARD_B   (DIK_B | 0x81000400)
 
#define DIKEYBOARD_N   (DIK_N | 0x81000400)
 
#define DIKEYBOARD_M   (DIK_M | 0x81000400)
 
#define DIKEYBOARD_COMMA   (DIK_COMMA | 0x81000400)
 
#define DIKEYBOARD_PERIOD   (DIK_PERIOD | 0x81000400)
 
#define DIKEYBOARD_SLASH   (DIK_SLASH | 0x81000400)
 
#define DIKEYBOARD_RSHIFT   (DIK_RSHIFT | 0x81000400)
 
#define DIKEYBOARD_MULTIPLY   (DIK_MULTIPLY | 0x81000400)
 
#define DIKEYBOARD_LMENU   (DIK_LMENU | 0x81000400)
 
#define DIKEYBOARD_SPACE   (DIK_SPACE | 0x81000400)
 
#define DIKEYBOARD_CAPITAL   (DIK_CAPITAL | 0x81000400)
 
#define DIKEYBOARD_F1   (DIK_F1 | 0x81000400)
 
#define DIKEYBOARD_F2   (DIK_F2 | 0x81000400)
 
#define DIKEYBOARD_F3   (DIK_F3 | 0x81000400)
 
#define DIKEYBOARD_F4   (DIK_F4 | 0x81000400)
 
#define DIKEYBOARD_F5   (DIK_F5 | 0x81000400)
 
#define DIKEYBOARD_F6   (DIK_F6 | 0x81000400)
 
#define DIKEYBOARD_F7   (DIK_F7 | 0x81000400)
 
#define DIKEYBOARD_F8   (DIK_F8 | 0x81000400)
 
#define DIKEYBOARD_F9   (DIK_F9 | 0x81000400)
 
#define DIKEYBOARD_F10   (DIK_F10 | 0x81000400)
 
#define DIKEYBOARD_NUMLOCK   (DIK_NUMLOCK | 0x81000400)
 
#define DIKEYBOARD_SCROLL   (DIK_SCROLL | 0x81000400)
 
#define DIKEYBOARD_NUMPAD7   (DIK_NUMPAD7 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD8   (DIK_NUMPAD8 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD9   (DIK_NUMPAD9 | 0x81000400)
 
#define DIKEYBOARD_SUBTRACT   (DIK_SUBTRACT | 0x81000400)
 
#define DIKEYBOARD_NUMPAD4   (DIK_NUMPAD4 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD5   (DIK_NUMPAD5 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD6   (DIK_NUMPAD6 | 0x81000400)
 
#define DIKEYBOARD_ADD   (DIK_ADD | 0x81000400)
 
#define DIKEYBOARD_NUMPAD1   (DIK_NUMPAD1 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD2   (DIK_NUMPAD2 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD3   (DIK_NUMPAD3 | 0x81000400)
 
#define DIKEYBOARD_NUMPAD0   (DIK_NUMPAD0 | 0x81000400)
 
#define DIKEYBOARD_DECIMAL   (DIK_DECIMAL | 0x81000400)
 
#define DIKEYBOARD_F11   (DIK_F11 | 0x81000400)
 
#define DIKEYBOARD_F12   (DIK_F12 | 0x81000400)
 
#define DIKEYBOARD_F13   (DIK_F13 | 0x81000400)
 
#define DIKEYBOARD_F14   (DIK_F14 | 0x81000400)
 
#define DIKEYBOARD_F15   (DIK_F15 | 0x81000400)
 
#define DIKEYBOARD_KANA   (DIK_KANA | 0x81000400)
 
#define DIKEYBOARD_CONVERT   (DIK_CONVERT | 0x81000400)
 
#define DIKEYBOARD_NOCONVERT   (DIK_NOCONVERT | 0x81000400)
 
#define DIKEYBOARD_YEN   (DIK_YEN | 0x81000400)
 
#define DIKEYBOARD_NUMPADEQUALS   (DIK_NUMPADEQUALS | 0x81000400)
 
#define DIKEYBOARD_CIRCUMFLEX   (DIK_CIRCUMFLEX | 0x81000400)
 
#define DIKEYBOARD_AT   (DIK_AT | 0x81000400)
 
#define DIKEYBOARD_COLON   (DIK_COLON | 0x81000400)
 
#define DIKEYBOARD_UNDERLINE   (DIK_UNDERLINE | 0x81000400)
 
#define DIKEYBOARD_KANJI   (DIK_KANJI | 0x81000400)
 
#define DIKEYBOARD_STOP   (DIK_STOP | 0x81000400)
 
#define DIKEYBOARD_AX   (DIK_AX | 0x81000400)
 
#define DIKEYBOARD_UNLABELED   (DIK_UNLABELED | 0x81000400)
 
#define DIKEYBOARD_NUMPADENTER   (DIK_NUMPADENTER | 0x81000400)
 
#define DIKEYBOARD_RCONTROL   (DIK_RCONTROL | 0x81000400)
 
#define DIKEYBOARD_NUMPADCOMMA   (DIK_NUMPADCOMMA | 0x81000400)
 
#define DIKEYBOARD_DIVIDE   (DIK_DIVIDE | 0x81000400)
 
#define DIKEYBOARD_SYSRQ   (DIK_SYSRQ | 0x81000400)
 
#define DIKEYBOARD_RMENU   (DIK_RMENU | 0x81000400)
 
#define DIKEYBOARD_PAUSE   (DIK_PAUSE | 0x81000400)
 
#define DIKEYBOARD_HOME   (DIK_HOME | 0x81000400)
 
#define DIKEYBOARD_UP   (DIK_UP | 0x81000400)
 
#define DIKEYBOARD_PRIOR   (DIK_PRIOR | 0x81000400)
 
#define DIKEYBOARD_LEFT   (DIK_LEFT | 0x81000400)
 
#define DIKEYBOARD_RIGHT   (DIK_RIGHT | 0x81000400)
 
#define DIKEYBOARD_END   (DIK_END | 0x81000400)
 
#define DIKEYBOARD_DOWN   (DIK_DOWN | 0x81000400)
 
#define DIKEYBOARD_NEXT   (DIK_NEXT | 0x81000400)
 
#define DIKEYBOARD_INSERT   (DIK_INSERT | 0x81000400)
 
#define DIKEYBOARD_DELETE   (DIK_DELETE | 0x81000400)
 
#define DIKEYBOARD_LWIN   (DIK_LWIN | 0x81000400)
 
#define DIKEYBOARD_RWIN   (DIK_RWIN | 0x81000400)
 
#define DIKEYBOARD_APPS   (DIK_APPS | 0x81000400)
 
#define DIKEYBOARD_POWER   (DIK_POWER | 0x81000400)
 
#define DIKEYBOARD_SLEEP   (DIK_SLEEP | 0x81000400)
 
#define DIKEYBOARD_BACKSPACE   (DIK_BACKSPACE | 0x81000400)
 
#define DIKEYBOARD_NUMPADSTAR   (DIK_NUMPADSTAR | 0x81000400)
 
#define DIKEYBOARD_LALT   (DIK_LALT | 0x81000400)
 
#define DIKEYBOARD_CAPSLOCK   (DIK_CAPSLOCK | 0x81000400)
 
#define DIKEYBOARD_NUMPADMINUS   (DIK_NUMPADMINUS | 0x81000400)
 
#define DIKEYBOARD_NUMPADPLUS   (DIK_NUMPADPLUS | 0x81000400)
 
#define DIKEYBOARD_NUMPADPERIOD   (DIK_NUMPADPERIOD | 0x81000400)
 
#define DIKEYBOARD_NUMPADSLASH   (DIK_NUMPADSLASH | 0x81000400)
 
#define DIKEYBOARD_RALT   (DIK_RALT | 0x81000400)
 
#define DIKEYBOARD_UPARROW   (DIK_UPARROW | 0x81000400)
 
#define DIKEYBOARD_PGUP   (DIK_PGUP | 0x81000400)
 
#define DIKEYBOARD_LEFTARROW   (DIK_LEFTARROW | 0x81000400)
 
#define DIKEYBOARD_RIGHTARROW   (DIK_RIGHTARROW | 0x81000400)
 
#define DIKEYBOARD_DOWNARROW   (DIK_DOWNARROW | 0x81000400)
 
#define DIKEYBOARD_PGDN   (DIK_PGDN | 0x81000400)
 
#define DIDFT_ALL   0x00000000
 
#define DIDFT_RELAXIS   0x00000001
 
#define DIDFT_ABSAXIS   0x00000002
 
#define DIDFT_AXIS   0x00000003
 
#define DIDFT_PSHBUTTON   0x00000004
 
#define DIDFT_TGLBUTTON   0x00000008
 
#define DIDFT_BUTTON   0x0000000C
 
#define DIDFT_POV   0x00000010
 
#define DIDFT_COLLECTION   0x00000040
 
#define DIDFT_NODATA   0x00000080
 
#define DIDFT_ANYINSTANCE   0x00FFFF00
 
#define DIDFT_INSTANCEMASK   DIDFT_ANYINSTANCE
 
#define DIDFT_MAKEINSTANCE(n)   ((WORD)(n) << 8)
 
#define DIDFT_GETTYPE(n)   LOBYTE(n)
 
#define DIDFT_GETINSTANCE(n)   LOWORD((n) >> 8)
 
#define DIDFT_FFACTUATOR   0x01000000
 
#define DIDFT_FFEFFECTTRIGGER   0x02000000
 
#define DIDFT_OUTPUT   0x10000000
 
#define DIDFT_VENDORDEFINED   0x04000000
 
#define DIDFT_ALIAS   0x08000000
 
#define DIDFT_OPTIONAL   0x80000000
 
#define DIDFT_ENUMCOLLECTION(n)   ((WORD)(n) << 8)
 
#define DIDFT_NOCOLLECTION   0x00FFFF00
 
#define DIDF_ABSAXIS   0x00000001
 
#define DIDF_RELAXIS   0x00000002
 
#define DIGDD_PEEK   0x00000001
 
#define DISEQUENCE_COMPARE(dwSq1, cmp, dwSq2)   ((int)((dwSq1) - (dwSq2)) cmp 0)
 
#define DIDOI_FFACTUATOR   0x00000001
 
#define DIDOI_FFEFFECTTRIGGER   0x00000002
 
#define DIDOI_POLLED   0x00008000
 
#define DIDOI_ASPECTPOSITION   0x00000100
 
#define DIDOI_ASPECTVELOCITY   0x00000200
 
#define DIDOI_ASPECTACCEL   0x00000300
 
#define DIDOI_ASPECTFORCE   0x00000400
 
#define DIDOI_ASPECTMASK   0x00000F00
 
#define DIDOI_GUIDISUSAGE   0x00010000
 
#define DIPH_DEVICE   0
 
#define DIPH_BYOFFSET   1
 
#define DIPH_BYID   2
 
#define DIPH_BYUSAGE   3
 
#define DIMAKEUSAGEDWORD(UsagePage, Usage)   (DWORD)MAKELONG(Usage, UsagePage)
 
#define DIPROPRANGE_NOMIN   ((LONG)0x80000000)
 
#define DIPROPRANGE_NOMAX   ((LONG)0x7FFFFFFF)
 
#define MAKEDIPROP(prop)   ((REFGUID)(prop))
 
#define DIPROP_BUFFERSIZE   MAKEDIPROP(1)
 
#define DIPROP_AXISMODE   MAKEDIPROP(2)
 
#define DIPROPAXISMODE_ABS   0
 
#define DIPROPAXISMODE_REL   1
 
#define DIPROP_GRANULARITY   MAKEDIPROP(3)
 
#define DIPROP_RANGE   MAKEDIPROP(4)
 
#define DIPROP_DEADZONE   MAKEDIPROP(5)
 
#define DIPROP_SATURATION   MAKEDIPROP(6)
 
#define DIPROP_FFGAIN   MAKEDIPROP(7)
 
#define DIPROP_FFLOAD   MAKEDIPROP(8)
 
#define DIPROP_AUTOCENTER   MAKEDIPROP(9)
 
#define DIPROPAUTOCENTER_OFF   0
 
#define DIPROPAUTOCENTER_ON   1
 
#define DIPROP_CALIBRATIONMODE   MAKEDIPROP(10)
 
#define DIPROPCALIBRATIONMODE_COOKED   0
 
#define DIPROPCALIBRATIONMODE_RAW   1
 
#define DIPROP_CALIBRATION   MAKEDIPROP(11)
 
#define DIPROP_GUIDANDPATH   MAKEDIPROP(12)
 
#define DIPROP_INSTANCENAME   MAKEDIPROP(13)
 
#define DIPROP_PRODUCTNAME   MAKEDIPROP(14)
 
#define DIPROP_JOYSTICKID   MAKEDIPROP(15)
 
#define DIPROP_KEYNAME   MAKEDIPROP(20)
 
#define DIPROP_VIDPID   MAKEDIPROP(24)
 
#define DIPROP_KEYNAME   MAKEDIPROP(20)
 
#define DIPROP_CPOINTS   MAKEDIPROP(21)
 
#define DIPROP_APPDATA   MAKEDIPROP(22)
 
#define DIPROP_SCANCODE   MAKEDIPROP(23)
 
#define DIPROP_VIDPID   MAKEDIPROP(24)
 
#define DIPROP_USERNAME   MAKEDIPROP(25)
 
#define DIPROP_TYPENAME   MAKEDIPROP(26)
 
#define DIDC_ATTACHED   0x00000001
 
#define DIDC_POLLEDDEVICE   0x00000002
 
#define DIDC_EMULATED   0x00000004
 
#define DIDC_POLLEDDATAFORMAT   0x00000008
 
#define DIDC_FORCEFEEDBACK   0x00000100
 
#define DIDC_FFATTACK   0x00000200
 
#define DIDC_FFFADE   0x00000400
 
#define DIDC_SATURATION   0x00000800
 
#define DIDC_POSNEGCOEFFICIENTS   0x00001000
 
#define DIDC_POSNEGSATURATION   0x00002000
 
#define DIDC_DEADBAND   0x00004000
 
#define DIDC_STARTDELAY   0x00008000
 
#define DIDC_ALIAS   0x00010000
 
#define DIDC_PHANTOM   0x00020000
 
#define DIDC_HIDDEN   0x00040000
 
#define DISCL_EXCLUSIVE   0x00000001
 
#define DISCL_NONEXCLUSIVE   0x00000002
 
#define DISCL_FOREGROUND   0x00000004
 
#define DISCL_BACKGROUND   0x00000008
 
#define DISCL_NOWINKEY   0x00000010
 
#define DISFFC_RESET   0x00000001
 
#define DISFFC_STOPALL   0x00000002
 
#define DISFFC_PAUSE   0x00000004
 
#define DISFFC_CONTINUE   0x00000008
 
#define DISFFC_SETACTUATORSON   0x00000010
 
#define DISFFC_SETACTUATORSOFF   0x00000020
 
#define DIGFFS_EMPTY   0x00000001
 
#define DIGFFS_STOPPED   0x00000002
 
#define DIGFFS_PAUSED   0x00000004
 
#define DIGFFS_ACTUATORSON   0x00000010
 
#define DIGFFS_ACTUATORSOFF   0x00000020
 
#define DIGFFS_POWERON   0x00000040
 
#define DIGFFS_POWEROFF   0x00000080
 
#define DIGFFS_SAFETYSWITCHON   0x00000100
 
#define DIGFFS_SAFETYSWITCHOFF   0x00000200
 
#define DIGFFS_USERFFSWITCHON   0x00000400
 
#define DIGFFS_USERFFSWITCHOFF   0x00000800
 
#define DIGFFS_DEVICELOST   0x80000000
 
#define DIEFT_ALL   0x00000000
 
#define DIEFT_CONSTANTFORCE   0x00000001
 
#define DIEFT_RAMPFORCE   0x00000002
 
#define DIEFT_PERIODIC   0x00000003
 
#define DIEFT_CONDITION   0x00000004
 
#define DIEFT_CUSTOMFORCE   0x00000005
 
#define DIEFT_HARDWARE   0x000000FF
 
#define DIEFT_FFATTACK   0x00000200
 
#define DIEFT_FFFADE   0x00000400
 
#define DIEFT_SATURATION   0x00000800
 
#define DIEFT_POSNEGCOEFFICIENTS   0x00001000
 
#define DIEFT_POSNEGSATURATION   0x00002000
 
#define DIEFT_DEADBAND   0x00004000
 
#define DIEFT_STARTDELAY   0x00008000
 
#define DIEFT_GETTYPE(n)   LOBYTE(n)
 
#define DIEFF_OBJECTIDS   0x00000001
 
#define DIEFF_OBJECTOFFSETS   0x00000002
 
#define DIEFF_CARTESIAN   0x00000010
 
#define DIEFF_POLAR   0x00000020
 
#define DIEFF_SPHERICAL   0x00000040
 
#define DIEP_DURATION   0x00000001
 
#define DIEP_SAMPLEPERIOD   0x00000002
 
#define DIEP_GAIN   0x00000004
 
#define DIEP_TRIGGERBUTTON   0x00000008
 
#define DIEP_TRIGGERREPEATINTERVAL   0x00000010
 
#define DIEP_AXES   0x00000020
 
#define DIEP_DIRECTION   0x00000040
 
#define DIEP_ENVELOPE   0x00000080
 
#define DIEP_TYPESPECIFICPARAMS   0x00000100
 
#define DIEP_STARTDELAY   0x00000200
 
#define DIEP_ALLPARAMS_DX5   0x000001FF
 
#define DIEP_ALLPARAMS   0x000003FF
 
#define DIEP_START   0x20000000
 
#define DIEP_NORESTART   0x40000000
 
#define DIEP_NODOWNLOAD   0x80000000
 
#define DIEB_NOTRIGGER   0xFFFFFFFF
 
#define DIES_SOLO   0x00000001
 
#define DIES_NODOWNLOAD   0x80000000
 
#define DIEGES_PLAYING   0x00000001
 
#define DIEGES_EMULATED   0x00000002
 
#define DI_DEGREES   100
 
#define DI_FFNOMINALMAX   10000
 
#define DI_SECONDS   1000000
 
#define DIJOFS_X   FIELD_OFFSET(DIJOYSTATE, lX)
 
#define DIJOFS_Y   FIELD_OFFSET(DIJOYSTATE, lY)
 
#define DIJOFS_Z   FIELD_OFFSET(DIJOYSTATE, lZ)
 
#define DIJOFS_RX   FIELD_OFFSET(DIJOYSTATE, lRx)
 
#define DIJOFS_RY   FIELD_OFFSET(DIJOYSTATE, lRy)
 
#define DIJOFS_RZ   FIELD_OFFSET(DIJOYSTATE, lRz)
 
#define DIJOFS_SLIDER(n)
 
#define DIJOFS_POV(n)
 
#define DIJOFS_BUTTON(n)   (FIELD_OFFSET(DIJOYSTATE, rgbButtons) + (n))
 
#define DIJOFS_BUTTON0   DIJOFS_BUTTON(0)
 
#define DIJOFS_BUTTON1   DIJOFS_BUTTON(1)
 
#define DIJOFS_BUTTON2   DIJOFS_BUTTON(2)
 
#define DIJOFS_BUTTON3   DIJOFS_BUTTON(3)
 
#define DIJOFS_BUTTON4   DIJOFS_BUTTON(4)
 
#define DIJOFS_BUTTON5   DIJOFS_BUTTON(5)
 
#define DIJOFS_BUTTON6   DIJOFS_BUTTON(6)
 
#define DIJOFS_BUTTON7   DIJOFS_BUTTON(7)
 
#define DIJOFS_BUTTON8   DIJOFS_BUTTON(8)
 
#define DIJOFS_BUTTON9   DIJOFS_BUTTON(9)
 
#define DIJOFS_BUTTON10   DIJOFS_BUTTON(10)
 
#define DIJOFS_BUTTON11   DIJOFS_BUTTON(11)
 
#define DIJOFS_BUTTON12   DIJOFS_BUTTON(12)
 
#define DIJOFS_BUTTON13   DIJOFS_BUTTON(13)
 
#define DIJOFS_BUTTON14   DIJOFS_BUTTON(14)
 
#define DIJOFS_BUTTON15   DIJOFS_BUTTON(15)
 
#define DIJOFS_BUTTON16   DIJOFS_BUTTON(16)
 
#define DIJOFS_BUTTON17   DIJOFS_BUTTON(17)
 
#define DIJOFS_BUTTON18   DIJOFS_BUTTON(18)
 
#define DIJOFS_BUTTON19   DIJOFS_BUTTON(19)
 
#define DIJOFS_BUTTON20   DIJOFS_BUTTON(20)
 
#define DIJOFS_BUTTON21   DIJOFS_BUTTON(21)
 
#define DIJOFS_BUTTON22   DIJOFS_BUTTON(22)
 
#define DIJOFS_BUTTON23   DIJOFS_BUTTON(23)
 
#define DIJOFS_BUTTON24   DIJOFS_BUTTON(24)
 
#define DIJOFS_BUTTON25   DIJOFS_BUTTON(25)
 
#define DIJOFS_BUTTON26   DIJOFS_BUTTON(26)
 
#define DIJOFS_BUTTON27   DIJOFS_BUTTON(27)
 
#define DIJOFS_BUTTON28   DIJOFS_BUTTON(28)
 
#define DIJOFS_BUTTON29   DIJOFS_BUTTON(29)
 
#define DIJOFS_BUTTON30   DIJOFS_BUTTON(30)
 
#define DIJOFS_BUTTON31   DIJOFS_BUTTON(31)
 
#define DIA_FORCEFEEDBACK   0x00000001
 
#define DIA_APPMAPPED   0x00000002
 
#define DIA_APPNOMAP   0x00000004
 
#define DIA_NORANGE   0x00000008
 
#define DIA_APPFIXED   0x00000010
 
#define DIAH_UNMAPPED   0x00000000
 
#define DIAH_USERCONFIG   0x00000001
 
#define DIAH_APPREQUESTED   0x00000002
 
#define DIAH_HWAPP   0x00000004
 
#define DIAH_HWDEFAULT   0x00000008
 
#define DIAH_DEFAULT   0x00000020
 
#define DIAH_ERROR   0x80000000
 
#define DIAFTS_NEWDEVICELOW   0xFFFFFFFF
 
#define DIAFTS_NEWDEVICEHIGH   0xFFFFFFFF
 
#define DIAFTS_UNUSEDDEVICELOW   0x00000000
 
#define DIAFTS_UNUSEDDEVICEHIGH   0x00000000
 
#define DIDBAM_DEFAULT   0x00000000
 
#define DIDBAM_PRESERVE   0x00000001
 
#define DIDBAM_INITIALIZE   0x00000002
 
#define DIDBAM_HWDEFAULTS   0x00000004
 
#define DIDSAM_DEFAULT   0x00000000
 
#define DIDSAM_NOUSER   0x00000001
 
#define DIDSAM_FORCESAVE   0x00000002
 
#define DICD_DEFAULT   0x00000000
 
#define DICD_EDIT   0x00000001
 
#define D3DCOLOR_DEFINED
 
#define DIDIFT_CONFIGURATION   0x00000001
 
#define DIDIFT_OVERLAY   0x00000002
 
#define DIDAL_CENTERED   0x00000000
 
#define DIDAL_LEFTALIGNED   0x00000001
 
#define DIDAL_RIGHTALIGNED   0x00000002
 
#define DIDAL_MIDDLE   0x00000000
 
#define DIDAL_TOPALIGNED   0x00000004
 
#define DIDAL_BOTTOMALIGNED   0x00000008
 
#define INTERFACE   IDirectInputEffect
 
#define IDirectInputEffect_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInputEffect_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInputEffect_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInputEffect_Initialize(p, a, b, c)   (p)->lpVtbl->Initialize(p,a,b,c)
 
#define IDirectInputEffect_GetEffectGuid(p, a)   (p)->lpVtbl->GetEffectGuid(p,a)
 
#define IDirectInputEffect_GetParameters(p, a, b)   (p)->lpVtbl->GetParameters(p,a,b)
 
#define IDirectInputEffect_SetParameters(p, a, b)   (p)->lpVtbl->SetParameters(p,a,b)
 
#define IDirectInputEffect_Start(p, a, b)   (p)->lpVtbl->Start(p,a,b)
 
#define IDirectInputEffect_Stop(p)   (p)->lpVtbl->Stop(p)
 
#define IDirectInputEffect_GetEffectStatus(p, a)   (p)->lpVtbl->GetEffectStatus(p,a)
 
#define IDirectInputEffect_Download(p)   (p)->lpVtbl->Download(p)
 
#define IDirectInputEffect_Unload(p)   (p)->lpVtbl->Unload(p)
 
#define IDirectInputEffect_Escape(p, a)   (p)->lpVtbl->Escape(p,a)
 
#define INTERFACE   IDirectInputDeviceA
 
#define INTERFACE   IDirectInputDeviceW
 
#define IDirectInputDevice_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInputDevice_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInputDevice_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInputDevice_GetCapabilities(p, a)   (p)->lpVtbl->GetCapabilities(p,a)
 
#define IDirectInputDevice_EnumObjects(p, a, b, c)   (p)->lpVtbl->EnumObjects(p,a,b,c)
 
#define IDirectInputDevice_GetProperty(p, a, b)   (p)->lpVtbl->GetProperty(p,a,b)
 
#define IDirectInputDevice_SetProperty(p, a, b)   (p)->lpVtbl->SetProperty(p,a,b)
 
#define IDirectInputDevice_Acquire(p)   (p)->lpVtbl->Acquire(p)
 
#define IDirectInputDevice_Unacquire(p)   (p)->lpVtbl->Unacquire(p)
 
#define IDirectInputDevice_GetDeviceState(p, a, b)   (p)->lpVtbl->GetDeviceState(p,a,b)
 
#define IDirectInputDevice_GetDeviceData(p, a, b, c, d)   (p)->lpVtbl->GetDeviceData(p,a,b,c,d)
 
#define IDirectInputDevice_SetDataFormat(p, a)   (p)->lpVtbl->SetDataFormat(p,a)
 
#define IDirectInputDevice_SetEventNotification(p, a)   (p)->lpVtbl->SetEventNotification(p,a)
 
#define IDirectInputDevice_SetCooperativeLevel(p, a, b)   (p)->lpVtbl->SetCooperativeLevel(p,a,b)
 
#define IDirectInputDevice_GetObjectInfo(p, a, b, c)   (p)->lpVtbl->GetObjectInfo(p,a,b,c)
 
#define IDirectInputDevice_GetDeviceInfo(p, a)   (p)->lpVtbl->GetDeviceInfo(p,a)
 
#define IDirectInputDevice_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInputDevice_Initialize(p, a, b, c)   (p)->lpVtbl->Initialize(p,a,b,c)
 
#define INTERFACE   IDirectInputDevice2A
 
#define INTERFACE   IDirectInputDevice2W
 
#define IDirectInputDevice2_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInputDevice2_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInputDevice2_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInputDevice2_GetCapabilities(p, a)   (p)->lpVtbl->GetCapabilities(p,a)
 
#define IDirectInputDevice2_EnumObjects(p, a, b, c)   (p)->lpVtbl->EnumObjects(p,a,b,c)
 
#define IDirectInputDevice2_GetProperty(p, a, b)   (p)->lpVtbl->GetProperty(p,a,b)
 
#define IDirectInputDevice2_SetProperty(p, a, b)   (p)->lpVtbl->SetProperty(p,a,b)
 
#define IDirectInputDevice2_Acquire(p)   (p)->lpVtbl->Acquire(p)
 
#define IDirectInputDevice2_Unacquire(p)   (p)->lpVtbl->Unacquire(p)
 
#define IDirectInputDevice2_GetDeviceState(p, a, b)   (p)->lpVtbl->GetDeviceState(p,a,b)
 
#define IDirectInputDevice2_GetDeviceData(p, a, b, c, d)   (p)->lpVtbl->GetDeviceData(p,a,b,c,d)
 
#define IDirectInputDevice2_SetDataFormat(p, a)   (p)->lpVtbl->SetDataFormat(p,a)
 
#define IDirectInputDevice2_SetEventNotification(p, a)   (p)->lpVtbl->SetEventNotification(p,a)
 
#define IDirectInputDevice2_SetCooperativeLevel(p, a, b)   (p)->lpVtbl->SetCooperativeLevel(p,a,b)
 
#define IDirectInputDevice2_GetObjectInfo(p, a, b, c)   (p)->lpVtbl->GetObjectInfo(p,a,b,c)
 
#define IDirectInputDevice2_GetDeviceInfo(p, a)   (p)->lpVtbl->GetDeviceInfo(p,a)
 
#define IDirectInputDevice2_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInputDevice2_Initialize(p, a, b, c)   (p)->lpVtbl->Initialize(p,a,b,c)
 
#define IDirectInputDevice2_CreateEffect(p, a, b, c, d)   (p)->lpVtbl->CreateEffect(p,a,b,c,d)
 
#define IDirectInputDevice2_EnumEffects(p, a, b, c)   (p)->lpVtbl->EnumEffects(p,a,b,c)
 
#define IDirectInputDevice2_GetEffectInfo(p, a, b)   (p)->lpVtbl->GetEffectInfo(p,a,b)
 
#define IDirectInputDevice2_GetForceFeedbackState(p, a)   (p)->lpVtbl->GetForceFeedbackState(p,a)
 
#define IDirectInputDevice2_SendForceFeedbackCommand(p, a)   (p)->lpVtbl->SendForceFeedbackCommand(p,a)
 
#define IDirectInputDevice2_EnumCreatedEffectObjects(p, a, b, c)   (p)->lpVtbl->EnumCreatedEffectObjects(p,a,b,c)
 
#define IDirectInputDevice2_Escape(p, a)   (p)->lpVtbl->Escape(p,a)
 
#define IDirectInputDevice2_Poll(p)   (p)->lpVtbl->Poll(p)
 
#define IDirectInputDevice2_SendDeviceData(p, a, b, c, d)   (p)->lpVtbl->SendDeviceData(p,a,b,c,d)
 
#define INTERFACE   IDirectInputDevice7A
 
#define INTERFACE   IDirectInputDevice7W
 
#define IDirectInputDevice7_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInputDevice7_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInputDevice7_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInputDevice7_GetCapabilities(p, a)   (p)->lpVtbl->GetCapabilities(p,a)
 
#define IDirectInputDevice7_EnumObjects(p, a, b, c)   (p)->lpVtbl->EnumObjects(p,a,b,c)
 
#define IDirectInputDevice7_GetProperty(p, a, b)   (p)->lpVtbl->GetProperty(p,a,b)
 
#define IDirectInputDevice7_SetProperty(p, a, b)   (p)->lpVtbl->SetProperty(p,a,b)
 
#define IDirectInputDevice7_Acquire(p)   (p)->lpVtbl->Acquire(p)
 
#define IDirectInputDevice7_Unacquire(p)   (p)->lpVtbl->Unacquire(p)
 
#define IDirectInputDevice7_GetDeviceState(p, a, b)   (p)->lpVtbl->GetDeviceState(p,a,b)
 
#define IDirectInputDevice7_GetDeviceData(p, a, b, c, d)   (p)->lpVtbl->GetDeviceData(p,a,b,c,d)
 
#define IDirectInputDevice7_SetDataFormat(p, a)   (p)->lpVtbl->SetDataFormat(p,a)
 
#define IDirectInputDevice7_SetEventNotification(p, a)   (p)->lpVtbl->SetEventNotification(p,a)
 
#define IDirectInputDevice7_SetCooperativeLevel(p, a, b)   (p)->lpVtbl->SetCooperativeLevel(p,a,b)
 
#define IDirectInputDevice7_GetObjectInfo(p, a, b, c)   (p)->lpVtbl->GetObjectInfo(p,a,b,c)
 
#define IDirectInputDevice7_GetDeviceInfo(p, a)   (p)->lpVtbl->GetDeviceInfo(p,a)
 
#define IDirectInputDevice7_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInputDevice7_Initialize(p, a, b, c)   (p)->lpVtbl->Initialize(p,a,b,c)
 
#define IDirectInputDevice7_CreateEffect(p, a, b, c, d)   (p)->lpVtbl->CreateEffect(p,a,b,c,d)
 
#define IDirectInputDevice7_EnumEffects(p, a, b, c)   (p)->lpVtbl->EnumEffects(p,a,b,c)
 
#define IDirectInputDevice7_GetEffectInfo(p, a, b)   (p)->lpVtbl->GetEffectInfo(p,a,b)
 
#define IDirectInputDevice7_GetForceFeedbackState(p, a)   (p)->lpVtbl->GetForceFeedbackState(p,a)
 
#define IDirectInputDevice7_SendForceFeedbackCommand(p, a)   (p)->lpVtbl->SendForceFeedbackCommand(p,a)
 
#define IDirectInputDevice7_EnumCreatedEffectObjects(p, a, b, c)   (p)->lpVtbl->EnumCreatedEffectObjects(p,a,b,c)
 
#define IDirectInputDevice7_Escape(p, a)   (p)->lpVtbl->Escape(p,a)
 
#define IDirectInputDevice7_Poll(p)   (p)->lpVtbl->Poll(p)
 
#define IDirectInputDevice7_SendDeviceData(p, a, b, c, d)   (p)->lpVtbl->SendDeviceData(p,a,b,c,d)
 
#define IDirectInputDevice7_EnumEffectsInFile(p, a, b, c, d)   (p)->lpVtbl->EnumEffectsInFile(p,a,b,c,d)
 
#define IDirectInputDevice7_WriteEffectToFile(p, a, b, c, d)   (p)->lpVtbl->WriteEffectToFile(p,a,b,c,d)
 
#define INTERFACE   IDirectInputDevice8A
 
#define INTERFACE   IDirectInputDevice8W
 
#define IDirectInputDevice8_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInputDevice8_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInputDevice8_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInputDevice8_GetCapabilities(p, a)   (p)->lpVtbl->GetCapabilities(p,a)
 
#define IDirectInputDevice8_EnumObjects(p, a, b, c)   (p)->lpVtbl->EnumObjects(p,a,b,c)
 
#define IDirectInputDevice8_GetProperty(p, a, b)   (p)->lpVtbl->GetProperty(p,a,b)
 
#define IDirectInputDevice8_SetProperty(p, a, b)   (p)->lpVtbl->SetProperty(p,a,b)
 
#define IDirectInputDevice8_Acquire(p)   (p)->lpVtbl->Acquire(p)
 
#define IDirectInputDevice8_Unacquire(p)   (p)->lpVtbl->Unacquire(p)
 
#define IDirectInputDevice8_GetDeviceState(p, a, b)   (p)->lpVtbl->GetDeviceState(p,a,b)
 
#define IDirectInputDevice8_GetDeviceData(p, a, b, c, d)   (p)->lpVtbl->GetDeviceData(p,a,b,c,d)
 
#define IDirectInputDevice8_SetDataFormat(p, a)   (p)->lpVtbl->SetDataFormat(p,a)
 
#define IDirectInputDevice8_SetEventNotification(p, a)   (p)->lpVtbl->SetEventNotification(p,a)
 
#define IDirectInputDevice8_SetCooperativeLevel(p, a, b)   (p)->lpVtbl->SetCooperativeLevel(p,a,b)
 
#define IDirectInputDevice8_GetObjectInfo(p, a, b, c)   (p)->lpVtbl->GetObjectInfo(p,a,b,c)
 
#define IDirectInputDevice8_GetDeviceInfo(p, a)   (p)->lpVtbl->GetDeviceInfo(p,a)
 
#define IDirectInputDevice8_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInputDevice8_Initialize(p, a, b, c)   (p)->lpVtbl->Initialize(p,a,b,c)
 
#define IDirectInputDevice8_CreateEffect(p, a, b, c, d)   (p)->lpVtbl->CreateEffect(p,a,b,c,d)
 
#define IDirectInputDevice8_EnumEffects(p, a, b, c)   (p)->lpVtbl->EnumEffects(p,a,b,c)
 
#define IDirectInputDevice8_GetEffectInfo(p, a, b)   (p)->lpVtbl->GetEffectInfo(p,a,b)
 
#define IDirectInputDevice8_GetForceFeedbackState(p, a)   (p)->lpVtbl->GetForceFeedbackState(p,a)
 
#define IDirectInputDevice8_SendForceFeedbackCommand(p, a)   (p)->lpVtbl->SendForceFeedbackCommand(p,a)
 
#define IDirectInputDevice8_EnumCreatedEffectObjects(p, a, b, c)   (p)->lpVtbl->EnumCreatedEffectObjects(p,a,b,c)
 
#define IDirectInputDevice8_Escape(p, a)   (p)->lpVtbl->Escape(p,a)
 
#define IDirectInputDevice8_Poll(p)   (p)->lpVtbl->Poll(p)
 
#define IDirectInputDevice8_SendDeviceData(p, a, b, c, d)   (p)->lpVtbl->SendDeviceData(p,a,b,c,d)
 
#define IDirectInputDevice8_EnumEffectsInFile(p, a, b, c, d)   (p)->lpVtbl->EnumEffectsInFile(p,a,b,c,d)
 
#define IDirectInputDevice8_WriteEffectToFile(p, a, b, c, d)   (p)->lpVtbl->WriteEffectToFile(p,a,b,c,d)
 
#define IDirectInputDevice8_BuildActionMap(p, a, b, c)   (p)->lpVtbl->BuildActionMap(p,a,b,c)
 
#define IDirectInputDevice8_SetActionMap(p, a, b, c)   (p)->lpVtbl->SetActionMap(p,a,b,c)
 
#define IDirectInputDevice8_GetImageInfo(p, a)   (p)->lpVtbl->GetImageInfo(p,a)
 
#define DIMOFS_X   FIELD_OFFSET(DIMOUSESTATE, lX)
 
#define DIMOFS_Y   FIELD_OFFSET(DIMOUSESTATE, lY)
 
#define DIMOFS_Z   FIELD_OFFSET(DIMOUSESTATE, lZ)
 
#define DIMOFS_BUTTON0   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 0)
 
#define DIMOFS_BUTTON1   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 1)
 
#define DIMOFS_BUTTON2   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 2)
 
#define DIMOFS_BUTTON3   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 3)
 
#define DIMOFS_BUTTON4   (FIELD_OFFSET(DIMOUSESTATE2, rgbButtons) + 4)
 
#define DIMOFS_BUTTON5   (FIELD_OFFSET(DIMOUSESTATE2, rgbButtons) + 5)
 
#define DIMOFS_BUTTON6   (FIELD_OFFSET(DIMOUSESTATE2, rgbButtons) + 6)
 
#define DIMOFS_BUTTON7   (FIELD_OFFSET(DIMOUSESTATE2, rgbButtons) + 7)
 
#define DIMOUSE_XAXISAB   (0x82000200 | DIMOFS_X)
 
#define DIMOUSE_YAXISAB   (0x82000200 | DIMOFS_Y)
 
#define DIMOUSE_XAXIS   (0x82000300 | DIMOFS_X)
 
#define DIMOUSE_YAXIS   (0x82000300 | DIMOFS_Y)
 
#define DIMOUSE_WHEEL   (0x82000300 | DIMOFS_Z)
 
#define DIMOUSE_BUTTON0   (0x82000400 | DIMOFS_BUTTON0)
 
#define DIMOUSE_BUTTON1   (0x82000400 | DIMOFS_BUTTON1)
 
#define DIMOUSE_BUTTON2   (0x82000400 | DIMOFS_BUTTON2)
 
#define DIMOUSE_BUTTON3   (0x82000400 | DIMOFS_BUTTON3)
 
#define DIMOUSE_BUTTON4   (0x82000400 | DIMOFS_BUTTON4)
 
#define DIMOUSE_BUTTON5   (0x82000400 | DIMOFS_BUTTON5)
 
#define DIMOUSE_BUTTON6   (0x82000400 | DIMOFS_BUTTON6)
 
#define DIMOUSE_BUTTON7   (0x82000400 | DIMOFS_BUTTON7)
 
#define DIAXIS_ANY_X_1   0xFF00C201
 
#define DIAXIS_ANY_X_2   0xFF00C202
 
#define DIAXIS_ANY_Y_1   0xFF014201
 
#define DIAXIS_ANY_Y_2   0xFF014202
 
#define DIAXIS_ANY_Z_1   0xFF01C201
 
#define DIAXIS_ANY_Z_2   0xFF01C202
 
#define DIAXIS_ANY_R_1   0xFF024201
 
#define DIAXIS_ANY_R_2   0xFF024202
 
#define DIAXIS_ANY_U_1   0xFF02C201
 
#define DIAXIS_ANY_U_2   0xFF02C202
 
#define DIAXIS_ANY_V_1   0xFF034201
 
#define DIAXIS_ANY_V_2   0xFF034202
 
#define DIAXIS_ANY_A_1   0xFF03C201
 
#define DIAXIS_ANY_A_2   0xFF03C202
 
#define DIAXIS_ANY_B_1   0xFF044201
 
#define DIAXIS_ANY_B_2   0xFF044202
 
#define DIAXIS_ANY_C_1   0xFF04C201
 
#define DIAXIS_ANY_C_2   0xFF04C202
 
#define DIAXIS_ANY_S_1   0xFF054201
 
#define DIAXIS_ANY_S_2   0xFF054202
 
#define DIAXIS_ANY_1   0xFF004201
 
#define DIAXIS_ANY_2   0xFF004202
 
#define DIAXIS_ANY_3   0xFF004203
 
#define DIAXIS_ANY_4   0xFF004204
 
#define DIPOV_ANY_1   0xFF004601
 
#define DIPOV_ANY_2   0xFF004602
 
#define DIPOV_ANY_3   0xFF004603
 
#define DIPOV_ANY_4   0xFF004604
 
#define DIBUTTON_ANY(instance)   (0xFF004400 | (instance))
 
#define INTERFACE   IDirectInputA
 
#define INTERFACE   IDirectInputW
 
#define IDirectInput_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInput_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInput_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInput_CreateDevice(p, a, b, c)   (p)->lpVtbl->CreateDevice(p,a,b,c)
 
#define IDirectInput_EnumDevices(p, a, b, c, d)   (p)->lpVtbl->EnumDevices(p,a,b,c,d)
 
#define IDirectInput_GetDeviceStatus(p, a)   (p)->lpVtbl->GetDeviceStatus(p,a)
 
#define IDirectInput_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInput_Initialize(p, a, b)   (p)->lpVtbl->Initialize(p,a,b)
 
#define INTERFACE   IDirectInput2A
 
#define INTERFACE   IDirectInput2W
 
#define IDirectInput2_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInput2_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInput2_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInput2_CreateDevice(p, a, b, c)   (p)->lpVtbl->CreateDevice(p,a,b,c)
 
#define IDirectInput2_EnumDevices(p, a, b, c, d)   (p)->lpVtbl->EnumDevices(p,a,b,c,d)
 
#define IDirectInput2_GetDeviceStatus(p, a)   (p)->lpVtbl->GetDeviceStatus(p,a)
 
#define IDirectInput2_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInput2_Initialize(p, a, b)   (p)->lpVtbl->Initialize(p,a,b)
 
#define IDirectInput2_FindDevice(p, a, b, c)   (p)->lpVtbl->FindDevice(p,a,b,c)
 
#define INTERFACE   IDirectInput7A
 
#define INTERFACE   IDirectInput7W
 
#define IDirectInput7_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInput7_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInput7_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInput7_CreateDevice(p, a, b, c)   (p)->lpVtbl->CreateDevice(p,a,b,c)
 
#define IDirectInput7_EnumDevices(p, a, b, c, d)   (p)->lpVtbl->EnumDevices(p,a,b,c,d)
 
#define IDirectInput7_GetDeviceStatus(p, a)   (p)->lpVtbl->GetDeviceStatus(p,a)
 
#define IDirectInput7_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInput7_Initialize(p, a, b)   (p)->lpVtbl->Initialize(p,a,b)
 
#define IDirectInput7_FindDevice(p, a, b, c)   (p)->lpVtbl->FindDevice(p,a,b,c)
 
#define IDirectInput7_CreateDeviceEx(p, a, b, c, d)   (p)->lpVtbl->CreateDeviceEx(p,a,b,c,d)
 
#define INTERFACE   IDirectInput8A
 
#define INTERFACE   IDirectInput8W
 
#define IDirectInput8_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectInput8_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectInput8_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectInput8_CreateDevice(p, a, b, c)   (p)->lpVtbl->CreateDevice(p,a,b,c)
 
#define IDirectInput8_EnumDevices(p, a, b, c, d)   (p)->lpVtbl->EnumDevices(p,a,b,c,d)
 
#define IDirectInput8_GetDeviceStatus(p, a)   (p)->lpVtbl->GetDeviceStatus(p,a)
 
#define IDirectInput8_RunControlPanel(p, a, b)   (p)->lpVtbl->RunControlPanel(p,a,b)
 
#define IDirectInput8_Initialize(p, a, b)   (p)->lpVtbl->Initialize(p,a,b)
 
#define IDirectInput8_FindDevice(p, a, b, c)   (p)->lpVtbl->FindDevice(p,a,b,c)
 
#define IDirectInput8_EnumDevicesBySemantics(p, a, b, c, d, e)   (p)->lpVtbl->EnumDevicesBySemantics(p,a,b,c,d,e)
 
#define IDirectInput8_ConfigureDevices(p, a, b, c, d)   (p)->lpVtbl->ConfigureDevices(p,a,b,c,d)
 
#define DirectInputCreate   WINELIB_NAME_AW(DirectInputCreate)
 

Typedefs

typedef struct IDirectInputA * LPDIRECTINPUTA
 
typedef struct IDirectInputW * LPDIRECTINPUTW
 
typedef struct IDirectInput2A * LPDIRECTINPUT2A
 
typedef struct IDirectInput2W * LPDIRECTINPUT2W
 
typedef struct IDirectInput7A * LPDIRECTINPUT7A
 
typedef struct IDirectInput7W * LPDIRECTINPUT7W
 
typedef struct IDirectInput8A * LPDIRECTINPUT8A
 
typedef struct IDirectInput8W * LPDIRECTINPUT8W
 
typedef struct IDirectInputDeviceA * LPDIRECTINPUTDEVICEA
 
typedef struct IDirectInputDeviceW * LPDIRECTINPUTDEVICEW
 
typedef struct IDirectInputDevice2A * LPDIRECTINPUTDEVICE2A
 
typedef struct IDirectInputDevice2W * LPDIRECTINPUTDEVICE2W
 
typedef struct IDirectInputDevice7A * LPDIRECTINPUTDEVICE7A
 
typedef struct IDirectInputDevice7W * LPDIRECTINPUTDEVICE7W
 
typedef struct IDirectInputDevice8A * LPDIRECTINPUTDEVICE8A
 
typedef struct IDirectInputDevice8W * LPDIRECTINPUTDEVICE8W
 
typedef struct IDirectInputEffect * LPDIRECTINPUTEFFECT
 
typedef struct SysKeyboardA * LPSYSKEYBOARDA
 
typedef struct SysMouseA * LPSYSMOUSEA
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3A DIDEVICEOBJECTINSTANCE_DX3A
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3ALPDIDEVICEOBJECTINSTANCE_DX3A
 
typedef const DIDEVICEOBJECTINSTANCE_DX3ALPCDIDEVICEOBJECTINSTANCE_DX3A
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3W DIDEVICEOBJECTINSTANCE_DX3W
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3WLPDIDEVICEOBJECTINSTANCE_DX3W
 
typedef const DIDEVICEOBJECTINSTANCE_DX3WLPCDIDEVICEOBJECTINSTANCE_DX3W
 
typedef struct DIDEVICEOBJECTINSTANCEA DIDEVICEOBJECTINSTANCEA
 
typedef struct DIDEVICEOBJECTINSTANCEALPDIDEVICEOBJECTINSTANCEA
 
typedef const DIDEVICEOBJECTINSTANCEALPCDIDEVICEOBJECTINSTANCEA
 
typedef struct DIDEVICEOBJECTINSTANCEW DIDEVICEOBJECTINSTANCEW
 
typedef struct DIDEVICEOBJECTINSTANCEWLPDIDEVICEOBJECTINSTANCEW
 
typedef const DIDEVICEOBJECTINSTANCEWLPCDIDEVICEOBJECTINSTANCEW
 
typedef struct DIDEVICEINSTANCE_DX3A DIDEVICEINSTANCE_DX3A
 
typedef struct DIDEVICEINSTANCE_DX3ALPDIDEVICEINSTANCE_DX3A
 
typedef const DIDEVICEINSTANCE_DX3ALPCDIDEVICEINSTANCE_DX3A
 
typedef struct DIDEVICEINSTANCE_DX3W DIDEVICEINSTANCE_DX3W
 
typedef struct DIDEVICEINSTANCE_DX3WLPDIDEVICEINSTANCE_DX3W
 
typedef const DIDEVICEINSTANCE_DX3WLPCDIDEVICEINSTANCE_DX3W
 
typedef struct DIDEVICEINSTANCEA DIDEVICEINSTANCEA
 
typedef struct DIDEVICEINSTANCEALPDIDEVICEINSTANCEA
 
typedef const DIDEVICEINSTANCEALPCDIDEVICEINSTANCEA
 
typedef struct DIDEVICEINSTANCEW DIDEVICEINSTANCEW
 
typedef struct DIDEVICEINSTANCEWLPDIDEVICEINSTANCEW
 
typedef const DIDEVICEINSTANCEWLPCDIDEVICEINSTANCEW
 
typedef BOOL(CALLBACKLPDIENUMDEVICESCALLBACKA) (LPCDIDEVICEINSTANCEA, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMDEVICESCALLBACKW) (LPCDIDEVICEINSTANCEW, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMDEVICESBYSEMANTICSCBA) (LPCDIDEVICEINSTANCEA, LPDIRECTINPUTDEVICE8A, DWORD, DWORD, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMDEVICESBYSEMANTICSCBW) (LPCDIDEVICEINSTANCEW, LPDIRECTINPUTDEVICE8W, DWORD, DWORD, LPVOID)
 
typedef BOOL(CALLBACKLPDICONFIGUREDEVICESCALLBACK) (LPUNKNOWN, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMDEVICEOBJECTSCALLBACKA) (LPCDIDEVICEOBJECTINSTANCEA, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMDEVICEOBJECTSCALLBACKW) (LPCDIDEVICEOBJECTINSTANCEW, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMCREATEDEFFECTOBJECTSCALLBACK) (LPDIRECTINPUTEFFECT, LPVOID)
 
typedef struct DIDEVICEOBJECTDATA_DX3 DIDEVICEOBJECTDATA_DX3
 
typedef struct DIDEVICEOBJECTDATA_DX3LPDIDEVICEOBJECTDATA_DX3
 
typedef const DIDEVICEOBJECTDATA_DX3LPCDIDEVICEOBJECTDATA_DX3
 
typedef struct DIDEVICEOBJECTDATA DIDEVICEOBJECTDATA
 
typedef struct DIDEVICEOBJECTDATALPDIDEVICEOBJECTDATA
 
typedef const DIDEVICEOBJECTDATALPCDIDEVICEOBJECTDATA
 
typedef struct _DIOBJECTDATAFORMAT DIOBJECTDATAFORMAT
 
typedef struct _DIOBJECTDATAFORMATLPDIOBJECTDATAFORMAT
 
typedef const DIOBJECTDATAFORMATLPCDIOBJECTDATAFORMAT
 
typedef struct _DIDATAFORMAT DIDATAFORMAT
 
typedef struct _DIDATAFORMATLPDIDATAFORMAT
 
typedef const DIDATAFORMATLPCDIDATAFORMAT
 
typedef struct DIPROPHEADER DIPROPHEADER
 
typedef struct DIPROPHEADERLPDIPROPHEADER
 
typedef const DIPROPHEADERLPCDIPROPHEADER
 
typedef struct DIPROPDWORD DIPROPDWORD
 
typedef struct DIPROPDWORDLPDIPROPDWORD
 
typedef const DIPROPDWORDLPCDIPROPDWORD
 
typedef struct DIPROPRANGE DIPROPRANGE
 
typedef struct DIPROPRANGELPDIPROPRANGE
 
typedef const DIPROPRANGELPCDIPROPRANGE
 
typedef struct DIPROPCAL DIPROPCAL
 
typedef struct DIPROPCALLPDIPROPCAL
 
typedef const DIPROPCALLPCDIPROPCAL
 
typedef struct DIPROPGUIDANDPATH DIPROPGUIDANDPATH
 
typedef struct DIPROPGUIDANDPATHLPDIPROPGUIDANDPATH
 
typedef const DIPROPGUIDANDPATHLPCDIPROPGUIDANDPATH
 
typedef struct DIPROPSTRING DIPROPSTRING
 
typedef struct DIPROPSTRINGLPDIPROPSTRING
 
typedef const DIPROPSTRINGLPCDIPROPSTRING
 
typedef struct DIDEVCAPS_DX3 DIDEVCAPS_DX3
 
typedef struct DIDEVCAPS_DX3LPDIDEVCAPS_DX3
 
typedef struct DIDEVCAPS DIDEVCAPS
 
typedef struct DIDEVCAPSLPDIDEVCAPS
 
typedef struct DICONSTANTFORCE DICONSTANTFORCE
 
typedef struct DICONSTANTFORCELPDICONSTANTFORCE
 
typedef const DICONSTANTFORCELPCDICONSTANTFORCE
 
typedef struct DIRAMPFORCE DIRAMPFORCE
 
typedef struct DIRAMPFORCELPDIRAMPFORCE
 
typedef const DIRAMPFORCELPCDIRAMPFORCE
 
typedef struct DIPERIODIC DIPERIODIC
 
typedef struct DIPERIODICLPDIPERIODIC
 
typedef const DIPERIODICLPCDIPERIODIC
 
typedef struct DICONDITION DICONDITION
 
typedef struct DICONDITIONLPDICONDITION
 
typedef const DICONDITIONLPCDICONDITION
 
typedef struct DICUSTOMFORCE DICUSTOMFORCE
 
typedef struct DICUSTOMFORCELPDICUSTOMFORCE
 
typedef const DICUSTOMFORCELPCDICUSTOMFORCE
 
typedef struct DIENVELOPE DIENVELOPE
 
typedef struct DIENVELOPELPDIENVELOPE
 
typedef const DIENVELOPELPCDIENVELOPE
 
typedef struct DIEFFECT_DX5 DIEFFECT_DX5
 
typedef struct DIEFFECT_DX5LPDIEFFECT_DX5
 
typedef const DIEFFECT_DX5LPCDIEFFECT_DX5
 
typedef struct DIEFFECT DIEFFECT
 
typedef struct DIEFFECTLPDIEFFECT
 
typedef const DIEFFECTLPCDIEFFECT
 
typedef DIEFFECT DIEFFECT_DX6
 
typedef LPDIEFFECT LPDIEFFECT_DX6
 
typedef struct DIEFFECTINFOA DIEFFECTINFOA
 
typedef struct DIEFFECTINFOALPDIEFFECTINFOA
 
typedef const DIEFFECTINFOALPCDIEFFECTINFOA
 
typedef struct DIEFFECTINFOW DIEFFECTINFOW
 
typedef struct DIEFFECTINFOWLPDIEFFECTINFOW
 
typedef const DIEFFECTINFOWLPCDIEFFECTINFOW
 
typedef BOOL(CALLBACKLPDIENUMEFFECTSCALLBACKA) (LPCDIEFFECTINFOA, LPVOID)
 
typedef BOOL(CALLBACKLPDIENUMEFFECTSCALLBACKW) (LPCDIEFFECTINFOW, LPVOID)
 
typedef struct DIEFFESCAPE DIEFFESCAPE
 
typedef struct DIEFFESCAPELPDIEFFESCAPE
 
typedef struct DIJOYSTATE DIJOYSTATE
 
typedef struct DIJOYSTATELPDIJOYSTATE
 
typedef struct DIJOYSTATE2 DIJOYSTATE2
 
typedef struct DIJOYSTATE2LPDIJOYSTATE2
 
typedef struct DIFILEEFFECT DIFILEEFFECT
 
typedef struct DIFILEEFFECTLPDIFILEEFFECT
 
typedef const DIFILEEFFECTLPCDIFILEEFFECT
 
typedef BOOL(CALLBACKLPDIENUMEFFECTSINFILECALLBACK) (LPCDIFILEEFFECT, LPVOID)
 
typedef struct _DIACTIONA DIACTIONA
 
typedef struct _DIACTIONALPDIACTIONA
 
typedef const DIACTIONALPCDIACTIONA
 
typedef struct _DIACTIONW DIACTIONW
 
typedef struct _DIACTIONWLPDIACTIONW
 
typedef const DIACTIONWLPCDIACTIONW
 
typedef struct _DIACTIONFORMATA DIACTIONFORMATA
 
typedef struct _DIACTIONFORMATALPDIACTIONFORMATA
 
typedef const DIACTIONFORMATALPCDIACTIONFORMATA
 
typedef struct _DIACTIONFORMATW DIACTIONFORMATW
 
typedef struct _DIACTIONFORMATWLPDIACTIONFORMATW
 
typedef const DIACTIONFORMATWLPCDIACTIONFORMATW
 
typedef DWORD D3DCOLOR
 
typedef struct _DICOLORSET DICOLORSET
 
typedef struct _DICOLORSETLPDICOLORSET
 
typedef const DICOLORSETLPCDICOLORSET
 
typedef struct _DICONFIGUREDEVICESPARAMSA DICONFIGUREDEVICESPARAMSA
 
typedef struct _DICONFIGUREDEVICESPARAMSALPDICONFIGUREDEVICESPARAMSA
 
typedef const DICONFIGUREDEVICESPARAMSALPCDICONFIGUREDEVICESPARAMSA
 
typedef struct _DICONFIGUREDEVICESPARAMSW DICONFIGUREDEVICESPARAMSW
 
typedef struct _DICONFIGUREDEVICESPARAMSWLPDICONFIGUREDEVICESPARAMSW
 
typedef const DICONFIGUREDEVICESPARAMSWLPCDICONFIGUREDEVICESPARAMSW
 
typedef struct _DIDEVICEIMAGEINFOA DIDEVICEIMAGEINFOA
 
typedef struct _DIDEVICEIMAGEINFOALPDIDEVICEIMAGEINFOA
 
typedef const DIDEVICEIMAGEINFOALPCDIDEVICEIMAGEINFOA
 
typedef struct _DIDEVICEIMAGEINFOW DIDEVICEIMAGEINFOW
 
typedef struct _DIDEVICEIMAGEINFOWLPDIDEVICEIMAGEINFOW
 
typedef const DIDEVICEIMAGEINFOWLPCDIDEVICEIMAGEINFOW
 
typedef struct _DIDEVICEIMAGEINFOHEADERA DIDEVICEIMAGEINFOHEADERA
 
typedef struct _DIDEVICEIMAGEINFOHEADERALPDIDEVICEIMAGEINFOHEADERA
 
typedef const DIDEVICEIMAGEINFOHEADERALPCDIDEVICEIMAGEINFOHEADERA
 
typedef struct _DIDEVICEIMAGEINFOHEADERW DIDEVICEIMAGEINFOHEADERW
 
typedef struct _DIDEVICEIMAGEINFOHEADERWLPDIDEVICEIMAGEINFOHEADERW
 
typedef const DIDEVICEIMAGEINFOHEADERWLPCDIDEVICEIMAGEINFOHEADERW
 
typedef struct DIMOUSESTATE DIMOUSESTATE
 
typedef struct DIMOUSESTATE2 DIMOUSESTATE2
 

Functions

 DEFINE_GUID (CLSID_DirectInput, 0x25E609E0, 0xB259, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (CLSID_DirectInputDevice, 0x25E609E1, 0xB259, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (CLSID_DirectInput8, 0x25E609E4, 0xB259, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (CLSID_DirectInputDevice8, 0x25E609E5, 0xB259, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInputA, 0x89521360, 0xAA8A, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInputW, 0x89521361, 0xAA8A, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInput2A, 0x5944E662, 0xAA8A, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInput2W, 0x5944E663, 0xAA8A, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInput7A, 0x9A4CB684, 0x236D, 0x11D3, 0x8E, 0x9D, 0x00, 0xC0, 0x4F, 0x68, 0x44, 0xAE)
 
 DEFINE_GUID (IID_IDirectInput7W, 0x9A4CB685, 0x236D, 0x11D3, 0x8E, 0x9D, 0x00, 0xC0, 0x4F, 0x68, 0x44, 0xAE)
 
 DEFINE_GUID (IID_IDirectInput8A, 0xBF798030, 0x483A, 0x4DA2, 0xAA, 0x99, 0x5D, 0x64, 0xED, 0x36, 0x97, 0x00)
 
 DEFINE_GUID (IID_IDirectInput8W, 0xBF798031, 0x483A, 0x4DA2, 0xAA, 0x99, 0x5D, 0x64, 0xED, 0x36, 0x97, 0x00)
 
 DEFINE_GUID (IID_IDirectInputDeviceA, 0x5944E680, 0xC92E, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInputDeviceW, 0x5944E681, 0xC92E, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInputDevice2A, 0x5944E682, 0xC92E, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInputDevice2W, 0x5944E683, 0xC92E, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (IID_IDirectInputDevice7A, 0x57D7C6BC, 0x2356, 0x11D3, 0x8E, 0x9D, 0x00, 0xC0, 0x4F, 0x68, 0x44, 0xAE)
 
 DEFINE_GUID (IID_IDirectInputDevice7W, 0x57D7C6BD, 0x2356, 0x11D3, 0x8E, 0x9D, 0x00, 0xC0, 0x4F, 0x68, 0x44, 0xAE)
 
 DEFINE_GUID (IID_IDirectInputDevice8A, 0x54D41080, 0xDC15, 0x4833, 0xA4, 0x1B, 0x74, 0x8F, 0x73, 0xA3, 0x81, 0x79)
 
 DEFINE_GUID (IID_IDirectInputDevice8W, 0x54D41081, 0xDC15, 0x4833, 0xA4, 0x1B, 0x74, 0x8F, 0x73, 0xA3, 0x81, 0x79)
 
 DEFINE_GUID (IID_IDirectInputEffect, 0xE7E1F7C0, 0x88D2, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_XAxis, 0xA36D02E0, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_YAxis, 0xA36D02E1, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_ZAxis, 0xA36D02E2, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_RxAxis, 0xA36D02F4, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_RyAxis, 0xA36D02F5, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_RzAxis, 0xA36D02E3, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_Slider, 0xA36D02E4, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_Button, 0xA36D02F0, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_Key, 0x55728220, 0xD33C, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_POV, 0xA36D02F2, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_Unknown, 0xA36D02F3, 0xC9F3, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_SysMouse, 0x6F1D2B60, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_SysKeyboard, 0x6F1D2B61, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_Joystick, 0x6F1D2B70, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_SysMouseEm, 0x6F1D2B80, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_SysMouseEm2, 0x6F1D2B81, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_SysKeyboardEm, 0x6F1D2B82, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_SysKeyboardEm2, 0x6F1D2B83, 0xD5A0, 0x11CF, 0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00)
 
 DEFINE_GUID (GUID_ConstantForce, 0x13541C20, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_RampForce, 0x13541C21, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Square, 0x13541C22, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Sine, 0x13541C23, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Triangle, 0x13541C24, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_SawtoothUp, 0x13541C25, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_SawtoothDown, 0x13541C26, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Spring, 0x13541C27, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Damper, 0x13541C28, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Inertia, 0x13541C29, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_Friction, 0x13541C2A, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DEFINE_GUID (GUID_CustomForce, 0x13541C2B, 0x8E33, 0x11D0, 0x9A, 0xD0, 0x00, 0xA0, 0xC9, 0xA0, 0x6E, 0x35)
 
 DECLARE_INTERFACE_ (IDirectInputEffect, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputDeviceA, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputDeviceW, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputDevice2A, IDirectInputDeviceA)
 
 DECLARE_INTERFACE_ (IDirectInputDevice2W, IDirectInputDeviceW)
 
 DECLARE_INTERFACE_ (IDirectInputDevice7A, IDirectInputDevice2A)
 
 DECLARE_INTERFACE_ (IDirectInputDevice7W, IDirectInputDevice2W)
 
 DECLARE_INTERFACE_ (IDirectInputDevice8A, IDirectInputDevice7A)
 
 DECLARE_INTERFACE_ (IDirectInputDevice8W, IDirectInputDevice7W)
 
 DECLARE_INTERFACE_ (IDirectInputA, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputW, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInput2A, IDirectInputA)
 
 DECLARE_INTERFACE_ (IDirectInput2W, IDirectInputW)
 
 DECLARE_INTERFACE_ (IDirectInput7A, IDirectInput2A)
 
 DECLARE_INTERFACE_ (IDirectInput7W, IDirectInput2W)
 
 DECLARE_INTERFACE_ (IDirectInput8A, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInput8W, IUnknown)
 
HRESULT WINAPI DirectInput8Create (HINSTANCE, DWORD, REFIID, LPVOID *, LPUNKNOWN)
 
HRESULT WINAPI DirectInputCreateA (HINSTANCE, DWORD, LPDIRECTINPUTA *, LPUNKNOWN)
 
HRESULT WINAPI DirectInputCreateW (HINSTANCE, DWORD, LPDIRECTINPUTW *, LPUNKNOWN)
 
HRESULT WINAPI DirectInputCreateEx (HINSTANCE, DWORD, REFIID, LPVOID *, LPUNKNOWN)
 

Variables

const DIDATAFORMAT c_dfDIMouse
 
const DIDATAFORMAT c_dfDIMouse2
 
const DIDATAFORMAT c_dfDIKeyboard
 
const DIDATAFORMAT c_dfDIJoystick
 
const DIDATAFORMAT c_dfDIJoystick2
 

Macro Definition Documentation

◆ COM_NO_WINDOWS_H

#define COM_NO_WINDOWS_H

Definition at line 22 of file dinput.h.

◆ D3DCOLOR_DEFINED

#define D3DCOLOR_DEFINED

Definition at line 1368 of file dinput.h.

◆ DI8DEVCLASS_ALL

#define DI8DEVCLASS_ALL   0

Definition at line 203 of file dinput.h.

◆ DI8DEVCLASS_DEVICE

#define DI8DEVCLASS_DEVICE   1

Definition at line 204 of file dinput.h.

◆ DI8DEVCLASS_GAMECTRL

#define DI8DEVCLASS_GAMECTRL   4

Definition at line 207 of file dinput.h.

◆ DI8DEVCLASS_KEYBOARD

#define DI8DEVCLASS_KEYBOARD   3

Definition at line 206 of file dinput.h.

◆ DI8DEVCLASS_POINTER

#define DI8DEVCLASS_POINTER   2

Definition at line 205 of file dinput.h.

◆ DI8DEVTYPE1STPERSON_LIMITED

#define DI8DEVTYPE1STPERSON_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE

Definition at line 291 of file dinput.h.

◆ DI8DEVTYPE1STPERSON_SHOOTER

#define DI8DEVTYPE1STPERSON_SHOOTER   4

Definition at line 294 of file dinput.h.

◆ DI8DEVTYPE1STPERSON_SIXDOF

#define DI8DEVTYPE1STPERSON_SIXDOF   3

Definition at line 293 of file dinput.h.

◆ DI8DEVTYPE1STPERSON_UNKNOWN

#define DI8DEVTYPE1STPERSON_UNKNOWN   2

Definition at line 292 of file dinput.h.

◆ DI8DEVTYPE_1STPERSON

#define DI8DEVTYPE_1STPERSON   0x18

Definition at line 216 of file dinput.h.

◆ DI8DEVTYPE_DEVICE

#define DI8DEVTYPE_DEVICE   0x11

Definition at line 209 of file dinput.h.

◆ DI8DEVTYPE_DEVICECTRL

#define DI8DEVTYPE_DEVICECTRL   0x19

Definition at line 217 of file dinput.h.

◆ DI8DEVTYPE_DRIVING

#define DI8DEVTYPE_DRIVING   0x16

Definition at line 214 of file dinput.h.

◆ DI8DEVTYPE_FLIGHT

#define DI8DEVTYPE_FLIGHT   0x17

Definition at line 215 of file dinput.h.

◆ DI8DEVTYPE_GAMEPAD

#define DI8DEVTYPE_GAMEPAD   0x15

Definition at line 213 of file dinput.h.

◆ DI8DEVTYPE_JOYSTICK

#define DI8DEVTYPE_JOYSTICK   0x14

Definition at line 212 of file dinput.h.

◆ DI8DEVTYPE_KEYBOARD

#define DI8DEVTYPE_KEYBOARD   0x13

Definition at line 211 of file dinput.h.

◆ DI8DEVTYPE_LIMITEDGAMESUBTYPE

#define DI8DEVTYPE_LIMITEDGAMESUBTYPE   1

Definition at line 271 of file dinput.h.

◆ DI8DEVTYPE_MOUSE

#define DI8DEVTYPE_MOUSE   0x12

Definition at line 210 of file dinput.h.

◆ DI8DEVTYPE_REMOTE

#define DI8DEVTYPE_REMOTE   0x1B

Definition at line 219 of file dinput.h.

◆ DI8DEVTYPE_SCREENPOINTER

#define DI8DEVTYPE_SCREENPOINTER   0x1A

Definition at line 218 of file dinput.h.

◆ DI8DEVTYPE_SUPPLEMENTAL

#define DI8DEVTYPE_SUPPLEMENTAL   0x1C

Definition at line 220 of file dinput.h.

◆ DI8DEVTYPEDEVICECTRL_COMMSSELECTION

#define DI8DEVTYPEDEVICECTRL_COMMSSELECTION   3

Definition at line 304 of file dinput.h.

◆ DI8DEVTYPEDEVICECTRL_COMMSSELECTION_HARDWIRED

#define DI8DEVTYPEDEVICECTRL_COMMSSELECTION_HARDWIRED   4

Definition at line 305 of file dinput.h.

◆ DI8DEVTYPEDEVICECTRL_UNKNOWN

#define DI8DEVTYPEDEVICECTRL_UNKNOWN   2

Definition at line 303 of file dinput.h.

◆ DI8DEVTYPEDRIVING_COMBINEDPEDALS

#define DI8DEVTYPEDRIVING_COMBINEDPEDALS   2

Definition at line 281 of file dinput.h.

◆ DI8DEVTYPEDRIVING_DUALPEDALS

#define DI8DEVTYPEDRIVING_DUALPEDALS   3

Definition at line 282 of file dinput.h.

◆ DI8DEVTYPEDRIVING_HANDHELD

#define DI8DEVTYPEDRIVING_HANDHELD   5

Definition at line 284 of file dinput.h.

◆ DI8DEVTYPEDRIVING_LIMITED

#define DI8DEVTYPEDRIVING_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE

Definition at line 280 of file dinput.h.

◆ DI8DEVTYPEDRIVING_THREEPEDALS

#define DI8DEVTYPEDRIVING_THREEPEDALS   4

Definition at line 283 of file dinput.h.

◆ DI8DEVTYPEFLIGHT_LIMITED

#define DI8DEVTYPEFLIGHT_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE

Definition at line 286 of file dinput.h.

◆ DI8DEVTYPEFLIGHT_RC

#define DI8DEVTYPEFLIGHT_RC   4

Definition at line 289 of file dinput.h.

◆ DI8DEVTYPEFLIGHT_STICK

#define DI8DEVTYPEFLIGHT_STICK   2

Definition at line 287 of file dinput.h.

◆ DI8DEVTYPEFLIGHT_YOKE

#define DI8DEVTYPEFLIGHT_YOKE   3

Definition at line 288 of file dinput.h.

◆ DI8DEVTYPEGAMEPAD_LIMITED

#define DI8DEVTYPEGAMEPAD_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE

Definition at line 276 of file dinput.h.

◆ DI8DEVTYPEGAMEPAD_STANDARD

#define DI8DEVTYPEGAMEPAD_STANDARD   2

Definition at line 277 of file dinput.h.

◆ DI8DEVTYPEGAMEPAD_TILT

#define DI8DEVTYPEGAMEPAD_TILT   3

Definition at line 278 of file dinput.h.

◆ DI8DEVTYPEJOYSTICK_LIMITED

#define DI8DEVTYPEJOYSTICK_LIMITED   DI8DEVTYPE_LIMITEDGAMESUBTYPE

Definition at line 273 of file dinput.h.

◆ DI8DEVTYPEJOYSTICK_STANDARD

#define DI8DEVTYPEJOYSTICK_STANDARD   2

Definition at line 274 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_J3100

#define DI8DEVTYPEKEYBOARD_J3100   12

Definition at line 269 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_JAPAN106

#define DI8DEVTYPEKEYBOARD_JAPAN106   10

Definition at line 267 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_JAPANAX

#define DI8DEVTYPEKEYBOARD_JAPANAX   11

Definition at line 268 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_NEC98

#define DI8DEVTYPEKEYBOARD_NEC98   7

Definition at line 264 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_NEC98106

#define DI8DEVTYPEKEYBOARD_NEC98106   9

Definition at line 266 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_NEC98LAPTOP

#define DI8DEVTYPEKEYBOARD_NEC98LAPTOP   8

Definition at line 265 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_NOKIA1050

#define DI8DEVTYPEKEYBOARD_NOKIA1050   5

Definition at line 262 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_NOKIA9140

#define DI8DEVTYPEKEYBOARD_NOKIA9140   6

Definition at line 263 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_OLIVETTI

#define DI8DEVTYPEKEYBOARD_OLIVETTI   2

Definition at line 259 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_PCAT

#define DI8DEVTYPEKEYBOARD_PCAT   3

Definition at line 260 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_PCENH

#define DI8DEVTYPEKEYBOARD_PCENH   4

Definition at line 261 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_PCXT

#define DI8DEVTYPEKEYBOARD_PCXT   1

Definition at line 258 of file dinput.h.

◆ DI8DEVTYPEKEYBOARD_UNKNOWN

#define DI8DEVTYPEKEYBOARD_UNKNOWN   0

Definition at line 257 of file dinput.h.

◆ DI8DEVTYPEMOUSE_ABSOLUTE

#define DI8DEVTYPEMOUSE_ABSOLUTE   6

Definition at line 255 of file dinput.h.

◆ DI8DEVTYPEMOUSE_FINGERSTICK

#define DI8DEVTYPEMOUSE_FINGERSTICK   3

Definition at line 252 of file dinput.h.

◆ DI8DEVTYPEMOUSE_TOUCHPAD

#define DI8DEVTYPEMOUSE_TOUCHPAD   4

Definition at line 253 of file dinput.h.

◆ DI8DEVTYPEMOUSE_TRACKBALL

#define DI8DEVTYPEMOUSE_TRACKBALL   5

Definition at line 254 of file dinput.h.

◆ DI8DEVTYPEMOUSE_TRADITIONAL

#define DI8DEVTYPEMOUSE_TRADITIONAL   2

Definition at line 251 of file dinput.h.

◆ DI8DEVTYPEMOUSE_UNKNOWN

#define DI8DEVTYPEMOUSE_UNKNOWN   1

Definition at line 250 of file dinput.h.

◆ DI8DEVTYPEREMOTE_UNKNOWN

#define DI8DEVTYPEREMOTE_UNKNOWN   2

Definition at line 301 of file dinput.h.

◆ DI8DEVTYPESCREENPTR_LIGHTGUN

#define DI8DEVTYPESCREENPTR_LIGHTGUN   3

Definition at line 297 of file dinput.h.

◆ DI8DEVTYPESCREENPTR_LIGHTPEN

#define DI8DEVTYPESCREENPTR_LIGHTPEN   4

Definition at line 298 of file dinput.h.

◆ DI8DEVTYPESCREENPTR_TOUCH

#define DI8DEVTYPESCREENPTR_TOUCH   5

Definition at line 299 of file dinput.h.

◆ DI8DEVTYPESCREENPTR_UNKNOWN

#define DI8DEVTYPESCREENPTR_UNKNOWN   2

Definition at line 296 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_2NDHANDCONTROLLER

#define DI8DEVTYPESUPPLEMENTAL_2NDHANDCONTROLLER   3

Definition at line 308 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_COMBINEDPEDALS

#define DI8DEVTYPESUPPLEMENTAL_COMBINEDPEDALS   10

Definition at line 315 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_DUALPEDALS

#define DI8DEVTYPESUPPLEMENTAL_DUALPEDALS   11

Definition at line 316 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_HANDTRACKER

#define DI8DEVTYPESUPPLEMENTAL_HANDTRACKER   5

Definition at line 310 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_HEADTRACKER

#define DI8DEVTYPESUPPLEMENTAL_HEADTRACKER   4

Definition at line 309 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_RUDDERPEDALS

#define DI8DEVTYPESUPPLEMENTAL_RUDDERPEDALS   13

Definition at line 318 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_SHIFTER

#define DI8DEVTYPESUPPLEMENTAL_SHIFTER   7

Definition at line 312 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_SHIFTSTICKGATE

#define DI8DEVTYPESUPPLEMENTAL_SHIFTSTICKGATE   6

Definition at line 311 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_SPLITTHROTTLE

#define DI8DEVTYPESUPPLEMENTAL_SPLITTHROTTLE   9

Definition at line 314 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_THREEPEDALS

#define DI8DEVTYPESUPPLEMENTAL_THREEPEDALS   12

Definition at line 317 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_THROTTLE

#define DI8DEVTYPESUPPLEMENTAL_THROTTLE   8

Definition at line 313 of file dinput.h.

◆ DI8DEVTYPESUPPLEMENTAL_UNKNOWN

#define DI8DEVTYPESUPPLEMENTAL_UNKNOWN   2

Definition at line 307 of file dinput.h.

◆ DI_BUFFEROVERFLOW

#define DI_BUFFEROVERFLOW   S_FALSE

Definition at line 130 of file dinput.h.

◆ DI_DEGREES

#define DI_DEGREES   100

Definition at line 1039 of file dinput.h.

◆ DI_DOWNLOADSKIPPED

#define DI_DOWNLOADSKIPPED   ((HRESULT)0x00000003)

Definition at line 134 of file dinput.h.

◆ DI_EFFECTRESTARTED

#define DI_EFFECTRESTARTED   ((HRESULT)0x00000004)

Definition at line 135 of file dinput.h.

◆ DI_FFNOMINALMAX

#define DI_FFNOMINALMAX   10000

Definition at line 1040 of file dinput.h.

◆ DI_NOEFFECT

#define DI_NOEFFECT   S_FALSE

Definition at line 132 of file dinput.h.

◆ DI_NOTATTACHED

#define DI_NOTATTACHED   S_FALSE

Definition at line 129 of file dinput.h.

◆ DI_OK

#define DI_OK   S_OK

Definition at line 128 of file dinput.h.

◆ DI_POLLEDDEVICE

#define DI_POLLEDDEVICE   ((HRESULT)0x00000002)

Definition at line 133 of file dinput.h.

◆ DI_PROPNOEFFECT

#define DI_PROPNOEFFECT   S_FALSE

Definition at line 131 of file dinput.h.

◆ DI_SECONDS

#define DI_SECONDS   1000000

Definition at line 1041 of file dinput.h.

◆ DI_SETTINGSNOTSAVED

#define DI_SETTINGSNOTSAVED   ((HRESULT)0x0000000B)

Definition at line 137 of file dinput.h.

◆ DI_TRUNCATED

#define DI_TRUNCATED   ((HRESULT)0x00000008)

Definition at line 136 of file dinput.h.

◆ DI_TRUNCATEDANDRESTARTED

#define DI_TRUNCATEDANDRESTARTED   ((HRESULT)0x0000000C)

Definition at line 138 of file dinput.h.

◆ DI_WRITEPROTECT

#define DI_WRITEPROTECT   ((HRESULT)0x00000013)

Definition at line 139 of file dinput.h.

◆ DIA_APPFIXED

#define DIA_APPFIXED   0x00000010

Definition at line 1299 of file dinput.h.

◆ DIA_APPMAPPED

#define DIA_APPMAPPED   0x00000002

Definition at line 1296 of file dinput.h.

◆ DIA_APPNOMAP

#define DIA_APPNOMAP   0x00000004

Definition at line 1297 of file dinput.h.

◆ DIA_FORCEFEEDBACK

#define DIA_FORCEFEEDBACK   0x00000001

Definition at line 1295 of file dinput.h.

◆ DIA_NORANGE

#define DIA_NORANGE   0x00000008

Definition at line 1298 of file dinput.h.

◆ DIAFTS_NEWDEVICEHIGH

#define DIAFTS_NEWDEVICEHIGH   0xFFFFFFFF

Definition at line 1350 of file dinput.h.

◆ DIAFTS_NEWDEVICELOW

#define DIAFTS_NEWDEVICELOW   0xFFFFFFFF

Definition at line 1349 of file dinput.h.

◆ DIAFTS_UNUSEDDEVICEHIGH

#define DIAFTS_UNUSEDDEVICEHIGH   0x00000000

Definition at line 1352 of file dinput.h.

◆ DIAFTS_UNUSEDDEVICELOW

#define DIAFTS_UNUSEDDEVICELOW   0x00000000

Definition at line 1351 of file dinput.h.

◆ DIAH_APPREQUESTED

#define DIAH_APPREQUESTED   0x00000002

Definition at line 1303 of file dinput.h.

◆ DIAH_DEFAULT

#define DIAH_DEFAULT   0x00000020

Definition at line 1306 of file dinput.h.

◆ DIAH_ERROR

#define DIAH_ERROR   0x80000000

Definition at line 1307 of file dinput.h.

◆ DIAH_HWAPP

#define DIAH_HWAPP   0x00000004

Definition at line 1304 of file dinput.h.

◆ DIAH_HWDEFAULT

#define DIAH_HWDEFAULT   0x00000008

Definition at line 1305 of file dinput.h.

◆ DIAH_UNMAPPED

#define DIAH_UNMAPPED   0x00000000

Definition at line 1301 of file dinput.h.

◆ DIAH_USERCONFIG

#define DIAH_USERCONFIG   0x00000001

Definition at line 1302 of file dinput.h.

◆ DIAXIS_ANY_1

#define DIAXIS_ANY_1   0xFF004201

Definition at line 2188 of file dinput.h.

◆ DIAXIS_ANY_2

#define DIAXIS_ANY_2   0xFF004202

Definition at line 2189 of file dinput.h.

◆ DIAXIS_ANY_3

#define DIAXIS_ANY_3   0xFF004203

Definition at line 2190 of file dinput.h.

◆ DIAXIS_ANY_4

#define DIAXIS_ANY_4   0xFF004204

Definition at line 2191 of file dinput.h.

◆ DIAXIS_ANY_A_1

#define DIAXIS_ANY_A_1   0xFF03C201

Definition at line 2180 of file dinput.h.

◆ DIAXIS_ANY_A_2

#define DIAXIS_ANY_A_2   0xFF03C202

Definition at line 2181 of file dinput.h.

◆ DIAXIS_ANY_B_1

#define DIAXIS_ANY_B_1   0xFF044201

Definition at line 2182 of file dinput.h.

◆ DIAXIS_ANY_B_2

#define DIAXIS_ANY_B_2   0xFF044202

Definition at line 2183 of file dinput.h.

◆ DIAXIS_ANY_C_1

#define DIAXIS_ANY_C_1   0xFF04C201

Definition at line 2184 of file dinput.h.

◆ DIAXIS_ANY_C_2

#define DIAXIS_ANY_C_2   0xFF04C202

Definition at line 2185 of file dinput.h.

◆ DIAXIS_ANY_R_1

#define DIAXIS_ANY_R_1   0xFF024201

Definition at line 2174 of file dinput.h.

◆ DIAXIS_ANY_R_2

#define DIAXIS_ANY_R_2   0xFF024202

Definition at line 2175 of file dinput.h.

◆ DIAXIS_ANY_S_1

#define DIAXIS_ANY_S_1   0xFF054201

Definition at line 2186 of file dinput.h.

◆ DIAXIS_ANY_S_2

#define DIAXIS_ANY_S_2   0xFF054202

Definition at line 2187 of file dinput.h.

◆ DIAXIS_ANY_U_1

#define DIAXIS_ANY_U_1   0xFF02C201

Definition at line 2176 of file dinput.h.

◆ DIAXIS_ANY_U_2

#define DIAXIS_ANY_U_2   0xFF02C202

Definition at line 2177 of file dinput.h.

◆ DIAXIS_ANY_V_1

#define DIAXIS_ANY_V_1   0xFF034201

Definition at line 2178 of file dinput.h.

◆ DIAXIS_ANY_V_2

#define DIAXIS_ANY_V_2   0xFF034202

Definition at line 2179 of file dinput.h.

◆ DIAXIS_ANY_X_1

#define DIAXIS_ANY_X_1   0xFF00C201

Definition at line 2168 of file dinput.h.

◆ DIAXIS_ANY_X_2

#define DIAXIS_ANY_X_2   0xFF00C202

Definition at line 2169 of file dinput.h.

◆ DIAXIS_ANY_Y_1

#define DIAXIS_ANY_Y_1   0xFF014201

Definition at line 2170 of file dinput.h.

◆ DIAXIS_ANY_Y_2

#define DIAXIS_ANY_Y_2   0xFF014202

Definition at line 2171 of file dinput.h.

◆ DIAXIS_ANY_Z_1

#define DIAXIS_ANY_Z_1   0xFF01C201

Definition at line 2172 of file dinput.h.

◆ DIAXIS_ANY_Z_2

#define DIAXIS_ANY_Z_2   0xFF01C202

Definition at line 2173 of file dinput.h.

◆ DIBUTTON_ANY

#define DIBUTTON_ANY (   instance)    (0xFF004400 | (instance))

Definition at line 2196 of file dinput.h.

◆ DICD_DEFAULT

#define DICD_DEFAULT   0x00000000

Definition at line 1363 of file dinput.h.

◆ DICD_EDIT

#define DICD_EDIT   0x00000001

Definition at line 1364 of file dinput.h.

◆ DIDAL_BOTTOMALIGNED

#define DIDAL_BOTTOMALIGNED   0x00000008

Definition at line 1420 of file dinput.h.

◆ DIDAL_CENTERED

#define DIDAL_CENTERED   0x00000000

Definition at line 1415 of file dinput.h.

◆ DIDAL_LEFTALIGNED

#define DIDAL_LEFTALIGNED   0x00000001

Definition at line 1416 of file dinput.h.

◆ DIDAL_MIDDLE

#define DIDAL_MIDDLE   0x00000000

Definition at line 1418 of file dinput.h.

◆ DIDAL_RIGHTALIGNED

#define DIDAL_RIGHTALIGNED   0x00000002

Definition at line 1417 of file dinput.h.

◆ DIDAL_TOPALIGNED

#define DIDAL_TOPALIGNED   0x00000004

Definition at line 1419 of file dinput.h.

◆ DIDBAM_DEFAULT

#define DIDBAM_DEFAULT   0x00000000

Definition at line 1354 of file dinput.h.

◆ DIDBAM_HWDEFAULTS

#define DIDBAM_HWDEFAULTS   0x00000004

Definition at line 1357 of file dinput.h.

◆ DIDBAM_INITIALIZE

#define DIDBAM_INITIALIZE   0x00000002

Definition at line 1356 of file dinput.h.

◆ DIDBAM_PRESERVE

#define DIDBAM_PRESERVE   0x00000001

Definition at line 1355 of file dinput.h.

◆ DIDC_ALIAS

#define DIDC_ALIAS   0x00010000

Definition at line 959 of file dinput.h.

◆ DIDC_ATTACHED

#define DIDC_ATTACHED   0x00000001

Definition at line 947 of file dinput.h.

◆ DIDC_DEADBAND

#define DIDC_DEADBAND   0x00004000

Definition at line 957 of file dinput.h.

◆ DIDC_EMULATED

#define DIDC_EMULATED   0x00000004

Definition at line 949 of file dinput.h.

◆ DIDC_FFATTACK

#define DIDC_FFATTACK   0x00000200

Definition at line 952 of file dinput.h.

◆ DIDC_FFFADE

#define DIDC_FFFADE   0x00000400

Definition at line 953 of file dinput.h.

◆ DIDC_FORCEFEEDBACK

#define DIDC_FORCEFEEDBACK   0x00000100

Definition at line 951 of file dinput.h.

◆ DIDC_HIDDEN

#define DIDC_HIDDEN   0x00040000

Definition at line 961 of file dinput.h.

◆ DIDC_PHANTOM

#define DIDC_PHANTOM   0x00020000

Definition at line 960 of file dinput.h.

◆ DIDC_POLLEDDATAFORMAT

#define DIDC_POLLEDDATAFORMAT   0x00000008

Definition at line 950 of file dinput.h.

◆ DIDC_POLLEDDEVICE

#define DIDC_POLLEDDEVICE   0x00000002

Definition at line 948 of file dinput.h.

◆ DIDC_POSNEGCOEFFICIENTS

#define DIDC_POSNEGCOEFFICIENTS   0x00001000

Definition at line 955 of file dinput.h.

◆ DIDC_POSNEGSATURATION

#define DIDC_POSNEGSATURATION   0x00002000

Definition at line 956 of file dinput.h.

◆ DIDC_SATURATION

#define DIDC_SATURATION   0x00000800

Definition at line 954 of file dinput.h.

◆ DIDC_STARTDELAY

#define DIDC_STARTDELAY   0x00008000

Definition at line 958 of file dinput.h.

◆ DIDEVTYPE_DEVICE

#define DIDEVTYPE_DEVICE   1

Definition at line 197 of file dinput.h.

◆ DIDEVTYPE_HID

#define DIDEVTYPE_HID   0x00010000

Definition at line 201 of file dinput.h.

◆ DIDEVTYPE_JOYSTICK

#define DIDEVTYPE_JOYSTICK   4

Definition at line 200 of file dinput.h.

◆ DIDEVTYPE_KEYBOARD

#define DIDEVTYPE_KEYBOARD   3

Definition at line 199 of file dinput.h.

◆ DIDEVTYPE_MOUSE

#define DIDEVTYPE_MOUSE   2

Definition at line 198 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_FLIGHTSTICK

#define DIDEVTYPEJOYSTICK_FLIGHTSTICK   3

Definition at line 244 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_GAMEPAD

#define DIDEVTYPEJOYSTICK_GAMEPAD   4

Definition at line 245 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_HEADTRACKER

#define DIDEVTYPEJOYSTICK_HEADTRACKER   7

Definition at line 248 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_RUDDER

#define DIDEVTYPEJOYSTICK_RUDDER   5

Definition at line 246 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_TRADITIONAL

#define DIDEVTYPEJOYSTICK_TRADITIONAL   2

Definition at line 243 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_UNKNOWN

#define DIDEVTYPEJOYSTICK_UNKNOWN   1

Definition at line 242 of file dinput.h.

◆ DIDEVTYPEJOYSTICK_WHEEL

#define DIDEVTYPEJOYSTICK_WHEEL   6

Definition at line 247 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_J3100

#define DIDEVTYPEKEYBOARD_J3100   12

Definition at line 240 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_JAPAN106

#define DIDEVTYPEKEYBOARD_JAPAN106   10

Definition at line 238 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_JAPANAX

#define DIDEVTYPEKEYBOARD_JAPANAX   11

Definition at line 239 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_NEC98

#define DIDEVTYPEKEYBOARD_NEC98   7

Definition at line 235 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_NEC98106

#define DIDEVTYPEKEYBOARD_NEC98106   9

Definition at line 237 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_NEC98LAPTOP

#define DIDEVTYPEKEYBOARD_NEC98LAPTOP   8

Definition at line 236 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_NOKIA1050

#define DIDEVTYPEKEYBOARD_NOKIA1050   5

Definition at line 233 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_NOKIA9140

#define DIDEVTYPEKEYBOARD_NOKIA9140   6

Definition at line 234 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_OLIVETTI

#define DIDEVTYPEKEYBOARD_OLIVETTI   2

Definition at line 230 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_PCAT

#define DIDEVTYPEKEYBOARD_PCAT   3

Definition at line 231 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_PCENH

#define DIDEVTYPEKEYBOARD_PCENH   4

Definition at line 232 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_PCXT

#define DIDEVTYPEKEYBOARD_PCXT   1

Definition at line 229 of file dinput.h.

◆ DIDEVTYPEKEYBOARD_UNKNOWN

#define DIDEVTYPEKEYBOARD_UNKNOWN   0

Definition at line 228 of file dinput.h.

◆ DIDEVTYPEMOUSE_FINGERSTICK

#define DIDEVTYPEMOUSE_FINGERSTICK   3

Definition at line 224 of file dinput.h.

◆ DIDEVTYPEMOUSE_TOUCHPAD

#define DIDEVTYPEMOUSE_TOUCHPAD   4

Definition at line 225 of file dinput.h.

◆ DIDEVTYPEMOUSE_TRACKBALL

#define DIDEVTYPEMOUSE_TRACKBALL   5

Definition at line 226 of file dinput.h.

◆ DIDEVTYPEMOUSE_TRADITIONAL

#define DIDEVTYPEMOUSE_TRADITIONAL   2

Definition at line 223 of file dinput.h.

◆ DIDEVTYPEMOUSE_UNKNOWN

#define DIDEVTYPEMOUSE_UNKNOWN   1

Definition at line 222 of file dinput.h.

◆ DIDF_ABSAXIS

#define DIDF_ABSAXIS   0x00000001

Definition at line 775 of file dinput.h.

◆ DIDF_RELAXIS

#define DIDF_RELAXIS   0x00000002

Definition at line 776 of file dinput.h.

◆ DIDFT_ABSAXIS

#define DIDFT_ABSAXIS   0x00000002

Definition at line 752 of file dinput.h.

◆ DIDFT_ALIAS

#define DIDFT_ALIAS   0x08000000

Definition at line 769 of file dinput.h.

◆ DIDFT_ALL

#define DIDFT_ALL   0x00000000

Definition at line 750 of file dinput.h.

◆ DIDFT_ANYINSTANCE

#define DIDFT_ANYINSTANCE   0x00FFFF00

Definition at line 760 of file dinput.h.

◆ DIDFT_AXIS

#define DIDFT_AXIS   0x00000003

Definition at line 753 of file dinput.h.

◆ DIDFT_BUTTON

#define DIDFT_BUTTON   0x0000000C

Definition at line 756 of file dinput.h.

◆ DIDFT_COLLECTION

#define DIDFT_COLLECTION   0x00000040

Definition at line 758 of file dinput.h.

◆ DIDFT_ENUMCOLLECTION

#define DIDFT_ENUMCOLLECTION (   n)    ((WORD)(n) << 8)

Definition at line 773 of file dinput.h.

◆ DIDFT_FFACTUATOR

#define DIDFT_FFACTUATOR   0x01000000

Definition at line 765 of file dinput.h.

◆ DIDFT_FFEFFECTTRIGGER

#define DIDFT_FFEFFECTTRIGGER   0x02000000

Definition at line 766 of file dinput.h.

◆ DIDFT_GETINSTANCE

#define DIDFT_GETINSTANCE (   n)    LOWORD((n) >> 8)

Definition at line 764 of file dinput.h.

◆ DIDFT_GETTYPE

#define DIDFT_GETTYPE (   n)    LOBYTE(n)

Definition at line 763 of file dinput.h.

◆ DIDFT_INSTANCEMASK

#define DIDFT_INSTANCEMASK   DIDFT_ANYINSTANCE

Definition at line 761 of file dinput.h.

◆ DIDFT_MAKEINSTANCE

#define DIDFT_MAKEINSTANCE (   n)    ((WORD)(n) << 8)

Definition at line 762 of file dinput.h.

◆ DIDFT_NOCOLLECTION

#define DIDFT_NOCOLLECTION   0x00FFFF00

Definition at line 774 of file dinput.h.

◆ DIDFT_NODATA

#define DIDFT_NODATA   0x00000080

Definition at line 759 of file dinput.h.

◆ DIDFT_OPTIONAL

#define DIDFT_OPTIONAL   0x80000000

Definition at line 771 of file dinput.h.

◆ DIDFT_OUTPUT

#define DIDFT_OUTPUT   0x10000000

Definition at line 767 of file dinput.h.

◆ DIDFT_POV

#define DIDFT_POV   0x00000010

Definition at line 757 of file dinput.h.

◆ DIDFT_PSHBUTTON

#define DIDFT_PSHBUTTON   0x00000004

Definition at line 754 of file dinput.h.

◆ DIDFT_RELAXIS

#define DIDFT_RELAXIS   0x00000001

Definition at line 751 of file dinput.h.

◆ DIDFT_TGLBUTTON

#define DIDFT_TGLBUTTON   0x00000008

Definition at line 755 of file dinput.h.

◆ DIDFT_VENDORDEFINED

#define DIDFT_VENDORDEFINED   0x04000000

Definition at line 768 of file dinput.h.

◆ DIDIFT_CONFIGURATION

#define DIDIFT_CONFIGURATION   0x00000001

Definition at line 1412 of file dinput.h.

◆ DIDIFT_OVERLAY

#define DIDIFT_OVERLAY   0x00000002

Definition at line 1413 of file dinput.h.

◆ DIDOI_ASPECTACCEL

#define DIDOI_ASPECTACCEL   0x00000300

Definition at line 822 of file dinput.h.

◆ DIDOI_ASPECTFORCE

#define DIDOI_ASPECTFORCE   0x00000400

Definition at line 823 of file dinput.h.

◆ DIDOI_ASPECTMASK

#define DIDOI_ASPECTMASK   0x00000F00

Definition at line 824 of file dinput.h.

◆ DIDOI_ASPECTPOSITION

#define DIDOI_ASPECTPOSITION   0x00000100

Definition at line 820 of file dinput.h.

◆ DIDOI_ASPECTVELOCITY

#define DIDOI_ASPECTVELOCITY   0x00000200

Definition at line 821 of file dinput.h.

◆ DIDOI_FFACTUATOR

#define DIDOI_FFACTUATOR   0x00000001

Definition at line 817 of file dinput.h.

◆ DIDOI_FFEFFECTTRIGGER

#define DIDOI_FFEFFECTTRIGGER   0x00000002

Definition at line 818 of file dinput.h.

◆ DIDOI_GUIDISUSAGE

#define DIDOI_GUIDISUSAGE   0x00010000

Definition at line 825 of file dinput.h.

◆ DIDOI_POLLED

#define DIDOI_POLLED   0x00008000

Definition at line 819 of file dinput.h.

◆ DIDSAM_DEFAULT

#define DIDSAM_DEFAULT   0x00000000

Definition at line 1359 of file dinput.h.

◆ DIDSAM_FORCESAVE

#define DIDSAM_FORCESAVE   0x00000002

Definition at line 1361 of file dinput.h.

◆ DIDSAM_NOUSER

#define DIDSAM_NOUSER   0x00000001

Definition at line 1360 of file dinput.h.

◆ DIEB_NOTRIGGER

#define DIEB_NOTRIGGER   0xFFFFFFFF

Definition at line 1031 of file dinput.h.

◆ DIEDBS_MAPPEDPRI1

#define DIEDBS_MAPPEDPRI1   0x00000001

Definition at line 445 of file dinput.h.

◆ DIEDBS_MAPPEDPRI2

#define DIEDBS_MAPPEDPRI2   0x00000002

Definition at line 446 of file dinput.h.

◆ DIEDBS_NEWDEVICE

#define DIEDBS_NEWDEVICE   0x00000020

Definition at line 448 of file dinput.h.

◆ DIEDBS_RECENTDEVICE

#define DIEDBS_RECENTDEVICE   0x00000010

Definition at line 447 of file dinput.h.

◆ DIEDBSFL_ATTACHEDONLY

#define DIEDBSFL_ATTACHEDONLY   0x00000000

Definition at line 450 of file dinput.h.

◆ DIEDBSFL_AVAILABLEDEVICES

#define DIEDBSFL_AVAILABLEDEVICES   0x00001000

Definition at line 453 of file dinput.h.

◆ DIEDBSFL_FORCEFEEDBACK

#define DIEDBSFL_FORCEFEEDBACK   DIEDFL_FORCEFEEDBACK

Definition at line 452 of file dinput.h.

◆ DIEDBSFL_MULTIMICEKEYBOARDS

#define DIEDBSFL_MULTIMICEKEYBOARDS   0x00002000

Definition at line 454 of file dinput.h.

◆ DIEDBSFL_NONGAMINGDEVICES

#define DIEDBSFL_NONGAMINGDEVICES   0x00004000

Definition at line 455 of file dinput.h.

◆ DIEDBSFL_THISUSER

#define DIEDBSFL_THISUSER   0x00000010

Definition at line 451 of file dinput.h.

◆ DIEDBSFL_VALID

#define DIEDBSFL_VALID   0x00007110

Definition at line 456 of file dinput.h.

◆ DIEDFL_ALLDEVICES

#define DIEDFL_ALLDEVICES   0x00000000

Definition at line 190 of file dinput.h.

◆ DIEDFL_ATTACHEDONLY

#define DIEDFL_ATTACHEDONLY   0x00000001

Definition at line 191 of file dinput.h.

◆ DIEDFL_FORCEFEEDBACK

#define DIEDFL_FORCEFEEDBACK   0x00000100

Definition at line 192 of file dinput.h.

◆ DIEDFL_INCLUDEALIASES

#define DIEDFL_INCLUDEALIASES   0x00010000

Definition at line 193 of file dinput.h.

◆ DIEDFL_INCLUDEHIDDEN

#define DIEDFL_INCLUDEHIDDEN   0x00040000

Definition at line 195 of file dinput.h.

◆ DIEDFL_INCLUDEPHANTOMS

#define DIEDFL_INCLUDEPHANTOMS   0x00020000

Definition at line 194 of file dinput.h.

◆ DIEFF_CARTESIAN

#define DIEFF_CARTESIAN   0x00000010

Definition at line 1012 of file dinput.h.

◆ DIEFF_OBJECTIDS

#define DIEFF_OBJECTIDS   0x00000001

Definition at line 1010 of file dinput.h.

◆ DIEFF_OBJECTOFFSETS

#define DIEFF_OBJECTOFFSETS   0x00000002

Definition at line 1011 of file dinput.h.

◆ DIEFF_POLAR

#define DIEFF_POLAR   0x00000020

Definition at line 1013 of file dinput.h.

◆ DIEFF_SPHERICAL

#define DIEFF_SPHERICAL   0x00000040

Definition at line 1014 of file dinput.h.

◆ DIEFT_ALL

#define DIEFT_ALL   0x00000000

Definition at line 993 of file dinput.h.

◆ DIEFT_CONDITION

#define DIEFT_CONDITION   0x00000004

Definition at line 998 of file dinput.h.

◆ DIEFT_CONSTANTFORCE

#define DIEFT_CONSTANTFORCE   0x00000001

Definition at line 995 of file dinput.h.

◆ DIEFT_CUSTOMFORCE

#define DIEFT_CUSTOMFORCE   0x00000005

Definition at line 999 of file dinput.h.

◆ DIEFT_DEADBAND

#define DIEFT_DEADBAND   0x00004000

Definition at line 1006 of file dinput.h.

◆ DIEFT_FFATTACK

#define DIEFT_FFATTACK   0x00000200

Definition at line 1001 of file dinput.h.

◆ DIEFT_FFFADE

#define DIEFT_FFFADE   0x00000400

Definition at line 1002 of file dinput.h.

◆ DIEFT_GETTYPE

#define DIEFT_GETTYPE (   n)    LOBYTE(n)

Definition at line 1008 of file dinput.h.

◆ DIEFT_HARDWARE

#define DIEFT_HARDWARE   0x000000FF

Definition at line 1000 of file dinput.h.

◆ DIEFT_PERIODIC

#define DIEFT_PERIODIC   0x00000003

Definition at line 997 of file dinput.h.

◆ DIEFT_POSNEGCOEFFICIENTS

#define DIEFT_POSNEGCOEFFICIENTS   0x00001000

Definition at line 1004 of file dinput.h.

◆ DIEFT_POSNEGSATURATION

#define DIEFT_POSNEGSATURATION   0x00002000

Definition at line 1005 of file dinput.h.

◆ DIEFT_RAMPFORCE

#define DIEFT_RAMPFORCE   0x00000002

Definition at line 996 of file dinput.h.

◆ DIEFT_SATURATION

#define DIEFT_SATURATION   0x00000800

Definition at line 1003 of file dinput.h.

◆ DIEFT_STARTDELAY

#define DIEFT_STARTDELAY   0x00008000

Definition at line 1007 of file dinput.h.

◆ DIEGES_EMULATED

#define DIEGES_EMULATED   0x00000002

Definition at line 1037 of file dinput.h.

◆ DIEGES_PLAYING

#define DIEGES_PLAYING   0x00000001

Definition at line 1036 of file dinput.h.

◆ DIENUM_CONTINUE

#define DIENUM_CONTINUE   1

Definition at line 188 of file dinput.h.

◆ DIENUM_STOP

#define DIENUM_STOP   0

Definition at line 187 of file dinput.h.

◆ DIEP_ALLPARAMS

#define DIEP_ALLPARAMS   0x000003FF

Definition at line 1027 of file dinput.h.

◆ DIEP_ALLPARAMS_DX5

#define DIEP_ALLPARAMS_DX5   0x000001FF

Definition at line 1026 of file dinput.h.

◆ DIEP_AXES

#define DIEP_AXES   0x00000020

Definition at line 1021 of file dinput.h.

◆ DIEP_DIRECTION

#define DIEP_DIRECTION   0x00000040

Definition at line 1022 of file dinput.h.

◆ DIEP_DURATION

#define DIEP_DURATION   0x00000001

Definition at line 1016 of file dinput.h.

◆ DIEP_ENVELOPE

#define DIEP_ENVELOPE   0x00000080

Definition at line 1023 of file dinput.h.

◆ DIEP_GAIN

#define DIEP_GAIN   0x00000004

Definition at line 1018 of file dinput.h.

◆ DIEP_NODOWNLOAD

#define DIEP_NODOWNLOAD   0x80000000

Definition at line 1030 of file dinput.h.

◆ DIEP_NORESTART

#define DIEP_NORESTART   0x40000000

Definition at line 1029 of file dinput.h.

◆ DIEP_SAMPLEPERIOD

#define DIEP_SAMPLEPERIOD   0x00000002

Definition at line 1017 of file dinput.h.

◆ DIEP_START

#define DIEP_START   0x20000000

Definition at line 1028 of file dinput.h.

◆ DIEP_STARTDELAY

#define DIEP_STARTDELAY   0x00000200

Definition at line 1025 of file dinput.h.

◆ DIEP_TRIGGERBUTTON

#define DIEP_TRIGGERBUTTON   0x00000008

Definition at line 1019 of file dinput.h.

◆ DIEP_TRIGGERREPEATINTERVAL

#define DIEP_TRIGGERREPEATINTERVAL   0x00000010

Definition at line 1020 of file dinput.h.

◆ DIEP_TYPESPECIFICPARAMS

#define DIEP_TYPESPECIFICPARAMS   0x00000100

Definition at line 1024 of file dinput.h.

◆ DIERR_ACQUIRED

Definition at line 165 of file dinput.h.

◆ DIERR_ALREADYINITIALIZED

Definition at line 159 of file dinput.h.

◆ DIERR_BADDRIVERVER

Definition at line 145 of file dinput.h.

◆ DIERR_BETADIRECTINPUTVERSION

#define DIERR_BETADIRECTINPUTVERSION   MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_RMODE_APP)

Definition at line 143 of file dinput.h.

◆ DIERR_DEVICEFULL

#define DIERR_DEVICEFULL   0x80040201L

Definition at line 175 of file dinput.h.

◆ DIERR_DEVICENOTREG

#define DIERR_DEVICENOTREG   REGDB_E_CLASSNOTREG

Definition at line 147 of file dinput.h.

◆ DIERR_EFFECTPLAYING

#define DIERR_EFFECTPLAYING   0x80040208L

Definition at line 182 of file dinput.h.

◆ DIERR_GENERIC

#define DIERR_GENERIC   E_FAIL

Definition at line 154 of file dinput.h.

◆ DIERR_HANDLEEXISTS

#define DIERR_HANDLEEXISTS   E_ACCESSDENIED

Definition at line 170 of file dinput.h.

◆ DIERR_HASEFFECTS

#define DIERR_HASEFFECTS   0x80040204L

Definition at line 178 of file dinput.h.

◆ DIERR_INCOMPLETEEFFECT

#define DIERR_INCOMPLETEEFFECT   0x80040206L

Definition at line 180 of file dinput.h.

◆ DIERR_INPUTLOST

Definition at line 163 of file dinput.h.

◆ DIERR_INSUFFICIENTPRIVS

#define DIERR_INSUFFICIENTPRIVS   0x80040200L

Definition at line 174 of file dinput.h.

◆ DIERR_INVALIDPARAM

#define DIERR_INVALIDPARAM   E_INVALIDARG

Definition at line 152 of file dinput.h.

◆ DIERR_MAPFILEFAIL

#define DIERR_MAPFILEFAIL   0x8004020BL

Definition at line 185 of file dinput.h.

◆ DIERR_MOREDATA

#define DIERR_MOREDATA   0x80040202L

Definition at line 176 of file dinput.h.

◆ DIERR_NOAGGREGATION

#define DIERR_NOAGGREGATION   CLASS_E_NOAGGREGATION

Definition at line 161 of file dinput.h.

◆ DIERR_NOINTERFACE

#define DIERR_NOINTERFACE   E_NOINTERFACE

Definition at line 153 of file dinput.h.

◆ DIERR_NOTACQUIRED

Definition at line 167 of file dinput.h.

◆ DIERR_NOTBUFFERED

#define DIERR_NOTBUFFERED   0x80040207L

Definition at line 181 of file dinput.h.

◆ DIERR_NOTDOWNLOADED

#define DIERR_NOTDOWNLOADED   0x80040203L

Definition at line 177 of file dinput.h.

◆ DIERR_NOTEXCLUSIVEACQUIRED

#define DIERR_NOTEXCLUSIVEACQUIRED   0x80040205L

Definition at line 179 of file dinput.h.

◆ DIERR_NOTFOUND

Definition at line 148 of file dinput.h.

◆ DIERR_NOTINITIALIZED

Definition at line 157 of file dinput.h.

◆ DIERR_OBJECTNOTFOUND

Definition at line 150 of file dinput.h.

◆ DIERR_OLDDIRECTINPUTVERSION

Definition at line 141 of file dinput.h.

◆ DIERR_OTHERAPPHASPRIO

#define DIERR_OTHERAPPHASPRIO   E_ACCESSDENIED

Definition at line 162 of file dinput.h.

◆ DIERR_OUTOFMEMORY

#define DIERR_OUTOFMEMORY   E_OUTOFMEMORY

Definition at line 155 of file dinput.h.

◆ DIERR_READONLY

#define DIERR_READONLY   E_ACCESSDENIED

Definition at line 169 of file dinput.h.

◆ DIERR_REPORTFULL

#define DIERR_REPORTFULL   0x8004020AL

Definition at line 184 of file dinput.h.

◆ DIERR_UNPLUGGED

#define DIERR_UNPLUGGED   0x80040209L

Definition at line 183 of file dinput.h.

◆ DIERR_UNSUPPORTED

#define DIERR_UNSUPPORTED   E_NOTIMPL

Definition at line 156 of file dinput.h.

◆ DIES_NODOWNLOAD

#define DIES_NODOWNLOAD   0x80000000

Definition at line 1034 of file dinput.h.

◆ DIES_SOLO

#define DIES_SOLO   0x00000001

Definition at line 1033 of file dinput.h.

◆ DIGDD_PEEK

#define DIGDD_PEEK   0x00000001

Definition at line 778 of file dinput.h.

◆ DIGFFS_ACTUATORSOFF

#define DIGFFS_ACTUATORSOFF   0x00000020

Definition at line 983 of file dinput.h.

◆ DIGFFS_ACTUATORSON

#define DIGFFS_ACTUATORSON   0x00000010

Definition at line 982 of file dinput.h.

◆ DIGFFS_DEVICELOST

#define DIGFFS_DEVICELOST   0x80000000

Definition at line 990 of file dinput.h.

◆ DIGFFS_EMPTY

#define DIGFFS_EMPTY   0x00000001

Definition at line 979 of file dinput.h.

◆ DIGFFS_PAUSED

#define DIGFFS_PAUSED   0x00000004

Definition at line 981 of file dinput.h.

◆ DIGFFS_POWEROFF

#define DIGFFS_POWEROFF   0x00000080

Definition at line 985 of file dinput.h.

◆ DIGFFS_POWERON

#define DIGFFS_POWERON   0x00000040

Definition at line 984 of file dinput.h.

◆ DIGFFS_SAFETYSWITCHOFF

#define DIGFFS_SAFETYSWITCHOFF   0x00000200

Definition at line 987 of file dinput.h.

◆ DIGFFS_SAFETYSWITCHON

#define DIGFFS_SAFETYSWITCHON   0x00000100

Definition at line 986 of file dinput.h.

◆ DIGFFS_STOPPED

#define DIGFFS_STOPPED   0x00000002

Definition at line 980 of file dinput.h.

◆ DIGFFS_USERFFSWITCHOFF

#define DIGFFS_USERFFSWITCHOFF   0x00000800

Definition at line 989 of file dinput.h.

◆ DIGFFS_USERFFSWITCHON

#define DIGFFS_USERFFSWITCHON   0x00000400

Definition at line 988 of file dinput.h.

◆ DIJOFS_BUTTON

#define DIJOFS_BUTTON (   n)    (FIELD_OFFSET(DIJOYSTATE, rgbButtons) + (n))

Definition at line 1217 of file dinput.h.

◆ DIJOFS_BUTTON0

#define DIJOFS_BUTTON0   DIJOFS_BUTTON(0)

Definition at line 1218 of file dinput.h.

◆ DIJOFS_BUTTON1

#define DIJOFS_BUTTON1   DIJOFS_BUTTON(1)

Definition at line 1219 of file dinput.h.

◆ DIJOFS_BUTTON10

#define DIJOFS_BUTTON10   DIJOFS_BUTTON(10)

Definition at line 1228 of file dinput.h.

◆ DIJOFS_BUTTON11

#define DIJOFS_BUTTON11   DIJOFS_BUTTON(11)

Definition at line 1229 of file dinput.h.

◆ DIJOFS_BUTTON12

#define DIJOFS_BUTTON12   DIJOFS_BUTTON(12)

Definition at line 1230 of file dinput.h.

◆ DIJOFS_BUTTON13

#define DIJOFS_BUTTON13   DIJOFS_BUTTON(13)

Definition at line 1231 of file dinput.h.

◆ DIJOFS_BUTTON14

#define DIJOFS_BUTTON14   DIJOFS_BUTTON(14)

Definition at line 1232 of file dinput.h.

◆ DIJOFS_BUTTON15

#define DIJOFS_BUTTON15   DIJOFS_BUTTON(15)

Definition at line 1233 of file dinput.h.

◆ DIJOFS_BUTTON16

#define DIJOFS_BUTTON16   DIJOFS_BUTTON(16)

Definition at line 1234 of file dinput.h.

◆ DIJOFS_BUTTON17

#define DIJOFS_BUTTON17   DIJOFS_BUTTON(17)

Definition at line 1235 of file dinput.h.

◆ DIJOFS_BUTTON18

#define DIJOFS_BUTTON18   DIJOFS_BUTTON(18)

Definition at line 1236 of file dinput.h.

◆ DIJOFS_BUTTON19

#define DIJOFS_BUTTON19   DIJOFS_BUTTON(19)

Definition at line 1237 of file dinput.h.

◆ DIJOFS_BUTTON2

#define DIJOFS_BUTTON2   DIJOFS_BUTTON(2)

Definition at line 1220 of file dinput.h.

◆ DIJOFS_BUTTON20

#define DIJOFS_BUTTON20   DIJOFS_BUTTON(20)

Definition at line 1238 of file dinput.h.

◆ DIJOFS_BUTTON21

#define DIJOFS_BUTTON21   DIJOFS_BUTTON(21)

Definition at line 1239 of file dinput.h.

◆ DIJOFS_BUTTON22

#define DIJOFS_BUTTON22   DIJOFS_BUTTON(22)

Definition at line 1240 of file dinput.h.

◆ DIJOFS_BUTTON23

#define DIJOFS_BUTTON23   DIJOFS_BUTTON(23)

Definition at line 1241 of file dinput.h.

◆ DIJOFS_BUTTON24

#define DIJOFS_BUTTON24   DIJOFS_BUTTON(24)

Definition at line 1242 of file dinput.h.

◆ DIJOFS_BUTTON25

#define DIJOFS_BUTTON25   DIJOFS_BUTTON(25)

Definition at line 1243 of file dinput.h.

◆ DIJOFS_BUTTON26

#define DIJOFS_BUTTON26   DIJOFS_BUTTON(26)

Definition at line 1244 of file dinput.h.

◆ DIJOFS_BUTTON27

#define DIJOFS_BUTTON27   DIJOFS_BUTTON(27)

Definition at line 1245 of file dinput.h.

◆ DIJOFS_BUTTON28

#define DIJOFS_BUTTON28   DIJOFS_BUTTON(28)

Definition at line 1246 of file dinput.h.

◆ DIJOFS_BUTTON29

#define DIJOFS_BUTTON29   DIJOFS_BUTTON(29)

Definition at line 1247 of file dinput.h.

◆ DIJOFS_BUTTON3

#define DIJOFS_BUTTON3   DIJOFS_BUTTON(3)

Definition at line 1221 of file dinput.h.

◆ DIJOFS_BUTTON30

#define DIJOFS_BUTTON30   DIJOFS_BUTTON(30)

Definition at line 1248 of file dinput.h.

◆ DIJOFS_BUTTON31

#define DIJOFS_BUTTON31   DIJOFS_BUTTON(31)

Definition at line 1249 of file dinput.h.

◆ DIJOFS_BUTTON4

#define DIJOFS_BUTTON4   DIJOFS_BUTTON(4)

Definition at line 1222 of file dinput.h.

◆ DIJOFS_BUTTON5

#define DIJOFS_BUTTON5   DIJOFS_BUTTON(5)

Definition at line 1223 of file dinput.h.

◆ DIJOFS_BUTTON6

#define DIJOFS_BUTTON6   DIJOFS_BUTTON(6)

Definition at line 1224 of file dinput.h.

◆ DIJOFS_BUTTON7

#define DIJOFS_BUTTON7   DIJOFS_BUTTON(7)

Definition at line 1225 of file dinput.h.

◆ DIJOFS_BUTTON8

#define DIJOFS_BUTTON8   DIJOFS_BUTTON(8)

Definition at line 1226 of file dinput.h.

◆ DIJOFS_BUTTON9

#define DIJOFS_BUTTON9   DIJOFS_BUTTON(9)

Definition at line 1227 of file dinput.h.

◆ DIJOFS_POV

#define DIJOFS_POV (   n)
Value:
(FIELD_OFFSET(DIJOYSTATE, rgdwPOV) + \
(n) * sizeof(DWORD))
GLdouble n
Definition: glext.h:7729
unsigned long DWORD
Definition: ntddk_ex.h:95
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:254

Definition at line 1215 of file dinput.h.

◆ DIJOFS_RX

#define DIJOFS_RX   FIELD_OFFSET(DIJOYSTATE, lRx)

Definition at line 1210 of file dinput.h.

◆ DIJOFS_RY

#define DIJOFS_RY   FIELD_OFFSET(DIJOYSTATE, lRy)

Definition at line 1211 of file dinput.h.

◆ DIJOFS_RZ

#define DIJOFS_RZ   FIELD_OFFSET(DIJOYSTATE, lRz)

Definition at line 1212 of file dinput.h.

◆ DIJOFS_SLIDER

#define DIJOFS_SLIDER (   n)
Value:
(FIELD_OFFSET(DIJOYSTATE, rglSlider) + \
(n) * sizeof(LONG))
GLdouble n
Definition: glext.h:7729
long LONG
Definition: pedump.c:60
#define FIELD_OFFSET(t, f)
Definition: typedefs.h:254

Definition at line 1213 of file dinput.h.

◆ DIJOFS_X

#define DIJOFS_X   FIELD_OFFSET(DIJOYSTATE, lX)

Definition at line 1207 of file dinput.h.

◆ DIJOFS_Y

#define DIJOFS_Y   FIELD_OFFSET(DIJOYSTATE, lY)

Definition at line 1208 of file dinput.h.

◆ DIJOFS_Z

#define DIJOFS_Z   FIELD_OFFSET(DIJOYSTATE, lZ)

Definition at line 1209 of file dinput.h.

◆ DIK_0

#define DIK_0   0x0B

Definition at line 480 of file dinput.h.

◆ DIK_1

#define DIK_1   0x02

Definition at line 471 of file dinput.h.

◆ DIK_2

#define DIK_2   0x03

Definition at line 472 of file dinput.h.

◆ DIK_3

#define DIK_3   0x04

Definition at line 473 of file dinput.h.

◆ DIK_4

#define DIK_4   0x05

Definition at line 474 of file dinput.h.

◆ DIK_5

#define DIK_5   0x06

Definition at line 475 of file dinput.h.

◆ DIK_6

#define DIK_6   0x07

Definition at line 476 of file dinput.h.

◆ DIK_7

#define DIK_7   0x08

Definition at line 477 of file dinput.h.

◆ DIK_8

#define DIK_8   0x09

Definition at line 478 of file dinput.h.

◆ DIK_9

#define DIK_9   0x0A

Definition at line 479 of file dinput.h.

◆ DIK_A

#define DIK_A   0x1E

Definition at line 499 of file dinput.h.

◆ DIK_ADD

#define DIK_ADD   0x4E /* + on numeric keypad */

Definition at line 547 of file dinput.h.

◆ DIK_APOSTROPHE

#define DIK_APOSTROPHE   0x28

Definition at line 509 of file dinput.h.

◆ DIK_APPS

#define DIK_APPS   0xDD /* AppMenu key */

Definition at line 590 of file dinput.h.

◆ DIK_AT

#define DIK_AT   0x91 /* (NEC PC98) */

Definition at line 564 of file dinput.h.

◆ DIK_AX

#define DIK_AX   0x96 /* (Japan AX) */

Definition at line 569 of file dinput.h.

◆ DIK_B

#define DIK_B   0x30

Definition at line 517 of file dinput.h.

◆ DIK_BACK

#define DIK_BACK   0x0E /* backspace */

Definition at line 483 of file dinput.h.

◆ DIK_BACKSLASH

#define DIK_BACKSLASH   0x2B

Definition at line 512 of file dinput.h.

◆ DIK_BACKSPACE

#define DIK_BACKSPACE   DIK_BACK /* backspace */

Definition at line 593 of file dinput.h.

◆ DIK_C

#define DIK_C   0x2E

Definition at line 515 of file dinput.h.

◆ DIK_CAPITAL

#define DIK_CAPITAL   0x3A

Definition at line 527 of file dinput.h.

◆ DIK_CAPSLOCK

#define DIK_CAPSLOCK   DIK_CAPITAL /* CapsLock */

Definition at line 596 of file dinput.h.

◆ DIK_CIRCUMFLEX

#define DIK_CIRCUMFLEX   0x90 /* (Japanese keyboard) */

Definition at line 563 of file dinput.h.

◆ DIK_COLON

#define DIK_COLON   0x92 /* (NEC PC98) */

Definition at line 565 of file dinput.h.

◆ DIK_COMMA

#define DIK_COMMA   0x33

Definition at line 520 of file dinput.h.

◆ DIK_CONVERT

#define DIK_CONVERT   0x79 /* (Japanese keyboard) */

Definition at line 559 of file dinput.h.

◆ DIK_D

#define DIK_D   0x20

Definition at line 501 of file dinput.h.

◆ DIK_DECIMAL

#define DIK_DECIMAL   0x53 /* . on numeric keypad */

Definition at line 552 of file dinput.h.

◆ DIK_DELETE

#define DIK_DELETE   0xD3 /* Delete on arrow keypad */

Definition at line 587 of file dinput.h.

◆ DIK_DIVIDE

#define DIK_DIVIDE   0xB5 /* / on numeric keypad */

Definition at line 574 of file dinput.h.

◆ DIK_DOWN

#define DIK_DOWN   0xD0 /* DownArrow on arrow keypad */

Definition at line 584 of file dinput.h.

◆ DIK_DOWNARROW

#define DIK_DOWNARROW   DIK_DOWN /* DownArrow on arrow keypad */

Definition at line 606 of file dinput.h.

◆ DIK_E

#define DIK_E   0x12

Definition at line 487 of file dinput.h.

◆ DIK_END

#define DIK_END   0xCF /* End on arrow keypad */

Definition at line 583 of file dinput.h.

◆ DIK_EQUALS

#define DIK_EQUALS   0x0D

Definition at line 482 of file dinput.h.

◆ DIK_ESCAPE

#define DIK_ESCAPE   0x01

Definition at line 470 of file dinput.h.

◆ DIK_F

#define DIK_F   0x21

Definition at line 502 of file dinput.h.

◆ DIK_F1

#define DIK_F1   0x3B

Definition at line 528 of file dinput.h.

◆ DIK_F10

#define DIK_F10   0x44

Definition at line 537 of file dinput.h.

◆ DIK_F11

#define DIK_F11   0x57

Definition at line 553 of file dinput.h.

◆ DIK_F12

#define DIK_F12   0x58

Definition at line 554 of file dinput.h.

◆ DIK_F13

#define DIK_F13   0x64 /* (NEC PC98) */

Definition at line 555 of file dinput.h.

◆ DIK_F14

#define DIK_F14   0x65 /* (NEC PC98) */

Definition at line 556 of file dinput.h.

◆ DIK_F15

#define DIK_F15   0x66 /* (NEC PC98) */

Definition at line 557 of file dinput.h.

◆ DIK_F2

#define DIK_F2   0x3C

Definition at line 529 of file dinput.h.

◆ DIK_F3

#define DIK_F3   0x3D

Definition at line 530 of file dinput.h.

◆ DIK_F4

#define DIK_F4   0x3E

Definition at line 531 of file dinput.h.

◆ DIK_F5

#define DIK_F5   0x3F

Definition at line 532 of file dinput.h.

◆ DIK_F6

#define DIK_F6   0x40

Definition at line 533 of file dinput.h.

◆ DIK_F7

#define DIK_F7   0x41

Definition at line 534 of file dinput.h.

◆ DIK_F8

#define DIK_F8   0x42

Definition at line 535 of file dinput.h.

◆ DIK_F9

#define DIK_F9   0x43

Definition at line 536 of file dinput.h.

◆ DIK_G

#define DIK_G   0x22

Definition at line 503 of file dinput.h.

◆ DIK_GRAVE

#define DIK_GRAVE   0x29 /* accent grave */

Definition at line 510 of file dinput.h.

◆ DIK_H

#define DIK_H   0x23

Definition at line 504 of file dinput.h.

◆ DIK_HOME

#define DIK_HOME   0xC7 /* Home on arrow keypad */

Definition at line 578 of file dinput.h.

◆ DIK_I

#define DIK_I   0x17

Definition at line 492 of file dinput.h.

◆ DIK_INSERT

#define DIK_INSERT   0xD2 /* Insert on arrow keypad */

Definition at line 586 of file dinput.h.

◆ DIK_J

#define DIK_J   0x24

Definition at line 505 of file dinput.h.

◆ DIK_K

#define DIK_K   0x25

Definition at line 506 of file dinput.h.

◆ DIK_KANA

#define DIK_KANA   0x70 /* (Japanese keyboard) */

Definition at line 558 of file dinput.h.

◆ DIK_KANJI

#define DIK_KANJI   0x94 /* (Japanese keyboard) */

Definition at line 567 of file dinput.h.