DirectX 5 Redocumentation
A redocumentation of DirectX 5, brought to you by a bunch of Infomaniacs.
dinput.h File Reference

Go to the source code of this file.

Data Structures

struct  DICONSTANTFORCE
 
struct  DIRAMPFORCE
 
struct  DIPERIODIC
 
struct  DICONDITION
 
struct  DICUSTOMFORCE
 
struct  DIENVELOPE
 
struct  DIEFFECT
 
struct  DIEFFESCAPE
 
struct  DIDEVCAPS_DX3
 
struct  DIDEVCAPS
 
struct  _DIOBJECTDATAFORMAT
 
struct  _DIDATAFORMAT
 
struct  DIDEVICEOBJECTINSTANCE_DX3A
 
struct  DIDEVICEOBJECTINSTANCE_DX3W
 
struct  DIDEVICEOBJECTINSTANCEA
 
struct  DIDEVICEOBJECTINSTANCEW
 
struct  DIPROPHEADER
 
struct  DIPROPDWORD
 
struct  DIPROPRANGE
 
struct  DIDEVICEOBJECTDATA
 
struct  DIDEVICEINSTANCE_DX3A
 
struct  DIDEVICEINSTANCE_DX3W
 
struct  DIDEVICEINSTANCEA
 
struct  DIDEVICEINSTANCEW
 
struct  DIEFFECTINFOA
 
struct  DIEFFECTINFOW
 
struct  _DIMOUSESTATE
 
struct  DIJOYSTATE
 
struct  DIJOYSTATE2
 

Macros

#define DIRECTINPUT_VERSION   0x0500
 
#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_GETTYPE(n)   LOBYTE(n)
 
#define DI_DEGREES   100
 
#define DI_FFNOMINALMAX   10000
 
#define DI_SECONDS   1000000
 
#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_ALLPARAMS   0x000001FF
 
#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 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 DIDEVTYPE_DEVICE   1
 
#define DIDEVTYPE_MOUSE   2
 
#define DIDEVTYPE_KEYBOARD   3
 
#define DIDEVTYPE_JOYSTICK   4
 
#define DIDEVTYPE_HID   0x00010000
 
#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 GET_DIDEVICE_TYPE(dwDevType)   LOBYTE(dwDevType)
 
#define GET_DIDEVICE_SUBTYPE(dwDevType)   HIBYTE(dwDevType)
 
#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 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_ENUMCOLLECTION(n)   ((WORD)(n) << 8)
 
#define DIDFT_NOCOLLECTION   0x00FFFF00
 
#define DIDF_ABSAXIS   0x00000001
 
#define DIDF_RELAXIS   0x00000002
 
#define LPDIENUMDEVICEOBJECTSCALLBACK   LPDIENUMDEVICEOBJECTSCALLBACKA
 
#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 DIPH_DEVICE   0
 
#define DIPH_BYOFFSET   1
 
#define DIPH_BYID   2
 
#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 DIGDD_PEEK   0x00000001
 
#define DISEQUENCE_COMPARE(dwSequence1, cmp, dwSequence2)    ((int)((dwSequence1) - (dwSequence2)) cmp 0)
 
#define DISCL_EXCLUSIVE   0x00000001
 
#define DISCL_NONEXCLUSIVE   0x00000002
 
#define DISCL_FOREGROUND   0x00000004
 
#define DISCL_BACKGROUND   0x00000008
 
#define INTERFACE   IDirectInputDeviceW
 
#define INTERFACE   IDirectInputDeviceA
 
#define IID_IDirectInputDevice   IID_IDirectInputDeviceA
 
#define IDirectInputDevice   IDirectInputDeviceA
 
#define IDirectInputDeviceVtbl   IDirectInputDeviceAVtbl
 
#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 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 LPDIENUMEFFECTSCALLBACK   LPDIENUMEFFECTSCALLBACKA
 
#define INTERFACE   IDirectInputDevice2W
 
#define INTERFACE   IDirectInputDevice2A
 
#define IID_IDirectInputDevice2   IID_IDirectInputDevice2A
 
#define IDirectInputDevice2   IDirectInputDevice2A
 
#define IDirectInputDevice2Vtbl   IDirectInputDevice2AVtbl
 
#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 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 DIK_ESCAPE   0x01
 Redocumentation fixme: how to tell doxygen the hex values for each? More...
 
#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
 
#define DIK_EQUALS   0x0D
 
#define DIK_BACK   0x0E
 
#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
 
#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
 
#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
 
#define DIK_SLASH   0x35
 
#define DIK_RSHIFT   0x36
 
#define DIK_MULTIPLY   0x37
 
#define DIK_LMENU   0x38
 
#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
 
#define DIK_NUMPAD7   0x47
 
#define DIK_NUMPAD8   0x48
 
#define DIK_NUMPAD9   0x49
 
#define DIK_SUBTRACT   0x4A
 
#define DIK_NUMPAD4   0x4B
 
#define DIK_NUMPAD5   0x4C
 
#define DIK_NUMPAD6   0x4D
 
#define DIK_ADD   0x4E
 
#define DIK_NUMPAD1   0x4F
 
#define DIK_NUMPAD2   0x50
 
#define DIK_NUMPAD3   0x51
 
#define DIK_NUMPAD0   0x52
 
#define DIK_DECIMAL   0x53
 
#define DIK_F11   0x57
 
#define DIK_F12   0x58
 
#define DIK_F13   0x64
 
#define DIK_F14   0x65
 
#define DIK_F15   0x66
 
#define DIK_KANA   0x70
 
#define DIK_CONVERT   0x79
 
#define DIK_NOCONVERT   0x7B
 
#define DIK_YEN   0x7D
 
#define DIK_NUMPADEQUALS   0x8D
 
#define DIK_CIRCUMFLEX   0x90
 
#define DIK_AT   0x91
 
#define DIK_COLON   0x92
 
#define DIK_UNDERLINE   0x93
 
#define DIK_KANJI   0x94
 
#define DIK_STOP   0x95
 
#define DIK_AX   0x96
 
#define DIK_UNLABELED   0x97
 
#define DIK_NUMPADENTER   0x9C
 
#define DIK_RCONTROL   0x9D
 
#define DIK_NUMPADCOMMA   0xB3
 
#define DIK_DIVIDE   0xB5
 
#define DIK_SYSRQ   0xB7
 
#define DIK_RMENU   0xB8
 
#define DIK_HOME   0xC7
 
#define DIK_UP   0xC8
 
#define DIK_PRIOR   0xC9
 
#define DIK_LEFT   0xCB
 
#define DIK_RIGHT   0xCD
 
#define DIK_END   0xCF
 
#define DIK_DOWN   0xD0
 
#define DIK_NEXT   0xD1
 
#define DIK_INSERT   0xD2
 
#define DIK_DELETE   0xD3
 
#define DIK_LWIN   0xDB
 
#define DIK_RWIN   0xDC
 
#define DIK_APPS   0xDD
 
#define DIK_BACKSPACE   DIK_BACK
 
#define DIK_NUMPADSTAR   DIK_MULTIPLY
 
#define DIK_LALT   DIK_LMENU
 
#define DIK_CAPSLOCK   DIK_CAPITAL
 
#define DIK_NUMPADMINUS   DIK_SUBTRACT
 
#define DIK_NUMPADPLUS   DIK_ADD
 
#define DIK_NUMPADPERIOD   DIK_DECIMAL
 
#define DIK_NUMPADSLASH   DIK_DIVIDE
 
#define DIK_RALT   DIK_RMENU
 
#define DIK_UPARROW   DIK_UP
 
#define DIK_PGUP   DIK_PRIOR
 
#define DIK_LEFTARROW   DIK_LEFT
 
#define DIK_RIGHTARROW   DIK_RIGHT
 
#define DIK_DOWNARROW   DIK_DOWN
 
#define DIK_PGDN   DIK_NEXT
 
#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 DIENUM_STOP   0
 
#define DIENUM_CONTINUE   1
 
#define LPDIENUMDEVICESCALLBACK   LPDIENUMDEVICESCALLBACKA
 
#define DIEDFL_ALLDEVICES   0x00000000
 
#define DIEDFL_ATTACHEDONLY   0x00000001
 
#define DIEDFL_FORCEFEEDBACK   0x00000100
 
#define INTERFACE   IDirectInputW
 
#define INTERFACE   IDirectInputA
 
#define IID_IDirectInput   IID_IDirectInputA
 
#define IDirectInput   IDirectInputA
 
#define IDirectInputVtbl   IDirectInputAVtbl
 
#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   IDirectInput2W
 
#define INTERFACE   IDirectInput2A
 
#define IID_IDirectInput2   IID_IDirectInput2A
 
#define IDirectInput2   IDirectInput2A
 
#define IDirectInput2Vtbl   IDirectInput2AVtbl
 
#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 DirectInputCreate   DirectInputCreateA
 
#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)0x00000002L)
 
#define DI_DOWNLOADSKIPPED   ((HRESULT)0x00000003L)
 
#define DI_EFFECTRESTARTED   ((HRESULT)0x00000004L)
 
#define DI_TRUNCATED   ((HRESULT)0x00000008L)
 
#define DI_TRUNCATEDANDRESTARTED   ((HRESULT)0x0000000CL)
 
#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   0x80070007L
 
#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
 

Typedefs

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 DIEFFECT
 
typedef struct DIEFFECTLPDIEFFECT
 
typedef const DIEFFECTLPCDIEFFECT
 
typedef struct DIEFFESCAPE DIEFFESCAPE
 
typedef struct DIEFFESCAPELPDIEFFESCAPE
 
typedef struct IDirectInputEffect * LPDIRECTINPUTEFFECT
 
typedef struct DIDEVCAPS_DX3 DIDEVCAPS_DX3
 
typedef struct DIDEVCAPS_DX3LPDIDEVCAPS_DX3
 
typedef struct DIDEVCAPS DIDEVCAPS
 
typedef struct DIDEVCAPSLPDIDEVCAPS
 
typedef struct _DIOBJECTDATAFORMAT DIOBJECTDATAFORMAT
 
typedef struct _DIOBJECTDATAFORMATLPDIOBJECTDATAFORMAT
 
typedef const DIOBJECTDATAFORMATLPCDIOBJECTDATAFORMAT
 
typedef struct _DIDATAFORMAT DIDATAFORMAT
 
typedef struct _DIDATAFORMATLPDIDATAFORMAT
 
typedef const DIDATAFORMATLPCDIDATAFORMAT
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3A DIDEVICEOBJECTINSTANCE_DX3A
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3ALPDIDEVICEOBJECTINSTANCE_DX3A
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3W DIDEVICEOBJECTINSTANCE_DX3W
 
typedef struct DIDEVICEOBJECTINSTANCE_DX3WLPDIDEVICEOBJECTINSTANCE_DX3W
 
typedef DIDEVICEOBJECTINSTANCE_DX3A DIDEVICEOBJECTINSTANCE_DX3
 
typedef LPDIDEVICEOBJECTINSTANCE_DX3A LPDIDEVICEOBJECTINSTANCE_DX3
 
typedef const DIDEVICEOBJECTINSTANCE_DX3ALPCDIDEVICEOBJECTINSTANCE_DX3A
 
typedef const DIDEVICEOBJECTINSTANCE_DX3WLPCDIDEVICEOBJECTINSTANCE_DX3W
 
typedef const DIDEVICEOBJECTINSTANCE_DX3LPCDIDEVICEOBJECTINSTANCE_DX3
 
typedef struct DIDEVICEOBJECTINSTANCEA DIDEVICEOBJECTINSTANCEA
 
typedef struct DIDEVICEOBJECTINSTANCEALPDIDEVICEOBJECTINSTANCEA
 
typedef struct DIDEVICEOBJECTINSTANCEW DIDEVICEOBJECTINSTANCEW
 
typedef struct DIDEVICEOBJECTINSTANCEWLPDIDEVICEOBJECTINSTANCEW
 
typedef DIDEVICEOBJECTINSTANCEA DIDEVICEOBJECTINSTANCE
 
typedef LPDIDEVICEOBJECTINSTANCEA LPDIDEVICEOBJECTINSTANCE
 
typedef const DIDEVICEOBJECTINSTANCEALPCDIDEVICEOBJECTINSTANCEA
 
typedef const DIDEVICEOBJECTINSTANCEWLPCDIDEVICEOBJECTINSTANCEW
 
typedef const DIDEVICEOBJECTINSTANCELPCDIDEVICEOBJECTINSTANCE
 
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 DIDEVICEOBJECTDATA DIDEVICEOBJECTDATA
 
typedef struct DIDEVICEOBJECTDATALPDIDEVICEOBJECTDATA
 
typedef const DIDEVICEOBJECTDATALPCDIDEVICEOBJECTDATA
 
typedef struct DIDEVICEINSTANCE_DX3A DIDEVICEINSTANCE_DX3A
 
typedef struct DIDEVICEINSTANCE_DX3ALPDIDEVICEINSTANCE_DX3A
 
typedef struct DIDEVICEINSTANCE_DX3W DIDEVICEINSTANCE_DX3W
 
typedef struct DIDEVICEINSTANCE_DX3WLPDIDEVICEINSTANCE_DX3W
 
typedef DIDEVICEINSTANCE_DX3A DIDEVICEINSTANCE_DX3
 
typedef LPDIDEVICEINSTANCE_DX3A LPDIDEVICEINSTANCE_DX3
 
typedef const DIDEVICEINSTANCE_DX3ALPCDIDEVICEINSTANCE_DX3A
 
typedef const DIDEVICEINSTANCE_DX3WLPCDIDEVICEINSTANCE_DX3W
 
typedef const DIDEVICEINSTANCE_DX3LPCDIDEVICEINSTANCE_DX3
 
typedef struct DIDEVICEINSTANCEA DIDEVICEINSTANCEA
 
typedef struct DIDEVICEINSTANCEALPDIDEVICEINSTANCEA
 
typedef struct DIDEVICEINSTANCEW DIDEVICEINSTANCEW
 
typedef struct DIDEVICEINSTANCEWLPDIDEVICEINSTANCEW
 
typedef DIDEVICEINSTANCEA DIDEVICEINSTANCE
 
typedef LPDIDEVICEINSTANCEA LPDIDEVICEINSTANCE
 
typedef const DIDEVICEINSTANCEALPCDIDEVICEINSTANCEA
 
typedef const DIDEVICEINSTANCEWLPCDIDEVICEINSTANCEW
 
typedef const DIDEVICEINSTANCELPCDIDEVICEINSTANCE
 
typedef struct IDirectInputDeviceW * LPDIRECTINPUTDEVICEW
 
typedef struct IDirectInputDeviceA * LPDIRECTINPUTDEVICEA
 
typedef struct IDirectInputDeviceLPDIRECTINPUTDEVICE
 
typedef struct DIEFFECTINFOA DIEFFECTINFOA
 
typedef struct DIEFFECTINFOALPDIEFFECTINFOA
 
typedef struct DIEFFECTINFOW DIEFFECTINFOW
 
typedef struct DIEFFECTINFOWLPDIEFFECTINFOW
 
typedef DIEFFECTINFOA DIEFFECTINFO
 
typedef LPDIEFFECTINFOA LPDIEFFECTINFO
 
typedef const DIEFFECTINFOALPCDIEFFECTINFOA
 
typedef const DIEFFECTINFOWLPCDIEFFECTINFOW
 
typedef const DIEFFECTINFOLPCDIEFFECTINFO
 
typedef struct IDirectInputDevice2W * LPDIRECTINPUTDEVICE2W
 
typedef struct IDirectInputDevice2A * LPDIRECTINPUTDEVICE2A
 
typedef struct IDirectInputDevice2LPDIRECTINPUTDEVICE2
 
typedef struct _DIMOUSESTATE DIMOUSESTATE
 
typedef struct _DIMOUSESTATELPDIMOUSESTATE
 
typedef struct DIJOYSTATE DIJOYSTATE
 
typedef struct DIJOYSTATELPDIJOYSTATE
 
typedef struct DIJOYSTATE2 DIJOYSTATE2
 
typedef struct DIJOYSTATE2LPDIJOYSTATE2
 
typedef struct IDirectInputW * LPDIRECTINPUTW
 
typedef struct IDirectInputA * LPDIRECTINPUTA
 
typedef struct IDirectInputLPDIRECTINPUT
 
typedef struct IDirectInput2W * LPDIRECTINPUT2W
 
typedef struct IDirectInput2A * LPDIRECTINPUT2A
 
typedef struct IDirectInput2LPDIRECTINPUT2
 

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 (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_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_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_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)
 
typedef BOOL (FAR PASCAL *LPDIENUMDEVICEOBJECTSCALLBACKA)(LPCDIDEVICEOBJECTINSTANCEA
 
 DECLARE_INTERFACE_ (IDirectInputDeviceW, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputDeviceA, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputDevice2W, IDirectInputDeviceW)
 
 DECLARE_INTERFACE_ (IDirectInputDevice2A, IDirectInputDeviceA)
 
 DECLARE_INTERFACE_ (IDirectInputW, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInputA, IUnknown)
 
 DECLARE_INTERFACE_ (IDirectInput2W, IDirectInputW)
 
 DECLARE_INTERFACE_ (IDirectInput2A, IDirectInputA)
 
HRESULT WINAPI DirectInputCreateA (HINSTANCE hinst, DWORD dwVersion, LPDIRECTINPUTA *ppDI, LPUNKNOWN punkOuter)
 
HRESULT WINAPI DirectInputCreateW (HINSTANCE hinst, DWORD dwVersion, LPDIRECTINPUTW *ppDI, LPUNKNOWN punkOuter)
 

Variables

const DIDATAFORMAT c_dfDIMouse
 
const DIDATAFORMAT c_dfDIKeyboard
 
const DIDATAFORMAT c_dfDIJoystick
 
const DIDATAFORMAT c_dfDIJoystick2
 
typedef LPVOID
 

Macro Definition Documentation

◆ DI_BUFFEROVERFLOW

#define DI_BUFFEROVERFLOW   S_FALSE

The device buffer overflowed. Some input was lost.

◆ DI_DEGREES

#define DI_DEGREES   100

◆ DI_DOWNLOADSKIPPED

#define DI_DOWNLOADSKIPPED   ((HRESULT)0x00000003L)

The parameters of the effect were successfully updated by IDirectInputEffect::SetParameters, but the effect was not downloaded because the device is not exclusively acquired or because the DIEP_NODOWNLOAD flag was passed.

◆ DI_EFFECTRESTARTED

#define DI_EFFECTRESTARTED   ((HRESULT)0x00000004L)

The parameters of the effect were successfully updated by IDirectInputEffect::SetParameters, but in order to change the parameters, the effect needed to be restarted.

◆ DI_FFNOMINALMAX

#define DI_FFNOMINALMAX   10000

◆ DI_NOEFFECT

#define DI_NOEFFECT   S_FALSE

The operation had no effect.

◆ DI_NOTATTACHED

#define DI_NOTATTACHED   S_FALSE

The device exists but is not currently attached.

◆ DI_OK

#define DI_OK   S_OK

The operation completed successfully.

◆ DI_POLLEDDEVICE

#define DI_POLLEDDEVICE   ((HRESULT)0x00000002L)

The device is a polled device. As a result, device buffering will not collect any data and event notifications will not be signalled until GetDeviceState is called.

◆ DI_PROPNOEFFECT

#define DI_PROPNOEFFECT   S_FALSE

The change in device properties had no effect.

◆ DI_SECONDS

#define DI_SECONDS   1000000

◆ DI_TRUNCATED

#define DI_TRUNCATED   ((HRESULT)0x00000008L)

The parameters of the effect were successfully updated by IDirectInputEffect::SetParameters, but some of them were beyond the capabilities of the device and were truncated.

◆ DI_TRUNCATEDANDRESTARTED

#define DI_TRUNCATEDANDRESTARTED   ((HRESULT)0x0000000CL)

Equal to DI_EFFECTRESTARTED | DI_TRUNCATED.

◆ DIDC_ATTACHED

#define DIDC_ATTACHED   0x00000001

◆ DIDC_DEADBAND

#define DIDC_DEADBAND   0x00004000

◆ DIDC_EMULATED

#define DIDC_EMULATED   0x00000004

◆ DIDC_FFATTACK

#define DIDC_FFATTACK   0x00000200

◆ DIDC_FFFADE

#define DIDC_FFFADE   0x00000400

◆ DIDC_FORCEFEEDBACK

#define DIDC_FORCEFEEDBACK   0x00000100

◆ DIDC_POLLEDDATAFORMAT

#define DIDC_POLLEDDATAFORMAT   0x00000008

◆ DIDC_POLLEDDEVICE

#define DIDC_POLLEDDEVICE   0x00000002

◆ DIDC_POSNEGCOEFFICIENTS

#define DIDC_POSNEGCOEFFICIENTS   0x00001000

◆ DIDC_POSNEGSATURATION

#define DIDC_POSNEGSATURATION   0x00002000

◆ DIDC_SATURATION

#define DIDC_SATURATION   0x00000800

◆ DIDEVTYPE_DEVICE

#define DIDEVTYPE_DEVICE   1

◆ DIDEVTYPE_HID

#define DIDEVTYPE_HID   0x00010000

◆ DIDEVTYPE_JOYSTICK

#define DIDEVTYPE_JOYSTICK   4

◆ DIDEVTYPE_KEYBOARD

#define DIDEVTYPE_KEYBOARD   3

◆ DIDEVTYPE_MOUSE

#define DIDEVTYPE_MOUSE   2

◆ DIDEVTYPEJOYSTICK_FLIGHTSTICK

#define DIDEVTYPEJOYSTICK_FLIGHTSTICK   3

◆ DIDEVTYPEJOYSTICK_GAMEPAD

#define DIDEVTYPEJOYSTICK_GAMEPAD   4

◆ DIDEVTYPEJOYSTICK_HEADTRACKER

#define DIDEVTYPEJOYSTICK_HEADTRACKER   7

◆ DIDEVTYPEJOYSTICK_RUDDER

#define DIDEVTYPEJOYSTICK_RUDDER   5

◆ DIDEVTYPEJOYSTICK_TRADITIONAL

#define DIDEVTYPEJOYSTICK_TRADITIONAL   2

◆ DIDEVTYPEJOYSTICK_UNKNOWN

#define DIDEVTYPEJOYSTICK_UNKNOWN   1

◆ DIDEVTYPEJOYSTICK_WHEEL

#define DIDEVTYPEJOYSTICK_WHEEL   6

◆ DIDEVTYPEKEYBOARD_J3100

#define DIDEVTYPEKEYBOARD_J3100   12

◆ DIDEVTYPEKEYBOARD_JAPAN106

#define DIDEVTYPEKEYBOARD_JAPAN106   10

◆ DIDEVTYPEKEYBOARD_JAPANAX

#define DIDEVTYPEKEYBOARD_JAPANAX   11

◆ DIDEVTYPEKEYBOARD_NEC98

#define DIDEVTYPEKEYBOARD_NEC98   7

◆ DIDEVTYPEKEYBOARD_NEC98106

#define DIDEVTYPEKEYBOARD_NEC98106   9

◆ DIDEVTYPEKEYBOARD_NEC98LAPTOP

#define DIDEVTYPEKEYBOARD_NEC98LAPTOP   8

◆ DIDEVTYPEKEYBOARD_NOKIA1050

#define DIDEVTYPEKEYBOARD_NOKIA1050   5

◆ DIDEVTYPEKEYBOARD_NOKIA9140

#define DIDEVTYPEKEYBOARD_NOKIA9140   6

◆ DIDEVTYPEKEYBOARD_OLIVETTI

#define DIDEVTYPEKEYBOARD_OLIVETTI   2

◆ DIDEVTYPEKEYBOARD_PCAT

#define DIDEVTYPEKEYBOARD_PCAT   3

◆ DIDEVTYPEKEYBOARD_PCENH

#define DIDEVTYPEKEYBOARD_PCENH   4

◆ DIDEVTYPEKEYBOARD_PCXT

#define DIDEVTYPEKEYBOARD_PCXT   1

◆ DIDEVTYPEKEYBOARD_UNKNOWN

#define DIDEVTYPEKEYBOARD_UNKNOWN   0

◆ DIDEVTYPEMOUSE_FINGERSTICK

#define DIDEVTYPEMOUSE_FINGERSTICK   3

◆ DIDEVTYPEMOUSE_TOUCHPAD

#define DIDEVTYPEMOUSE_TOUCHPAD   4

◆ DIDEVTYPEMOUSE_TRACKBALL

#define DIDEVTYPEMOUSE_TRACKBALL   5

◆ DIDEVTYPEMOUSE_TRADITIONAL

#define DIDEVTYPEMOUSE_TRADITIONAL   2

◆ DIDEVTYPEMOUSE_UNKNOWN

#define DIDEVTYPEMOUSE_UNKNOWN   1

◆ DIDF_ABSAXIS

#define DIDF_ABSAXIS   0x00000001

◆ DIDF_RELAXIS

#define DIDF_RELAXIS   0x00000002

◆ DIDFT_ABSAXIS

#define DIDFT_ABSAXIS   0x00000002

◆ DIDFT_ALL

#define DIDFT_ALL   0x00000000

◆ DIDFT_ANYINSTANCE

#define DIDFT_ANYINSTANCE   0x00FFFF00

◆ DIDFT_AXIS

#define DIDFT_AXIS   0x00000003

◆ DIDFT_BUTTON

#define DIDFT_BUTTON   0x0000000C

◆ DIDFT_COLLECTION

#define DIDFT_COLLECTION   0x00000040

◆ DIDFT_ENUMCOLLECTION

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

◆ DIDFT_FFACTUATOR

#define DIDFT_FFACTUATOR   0x01000000

◆ DIDFT_FFEFFECTTRIGGER

#define DIDFT_FFEFFECTTRIGGER   0x02000000

◆ DIDFT_GETINSTANCE

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

◆ DIDFT_GETTYPE

#define DIDFT_GETTYPE (   n)    LOBYTE(n)

◆ DIDFT_INSTANCEMASK

#define DIDFT_INSTANCEMASK   DIDFT_ANYINSTANCE

◆ DIDFT_MAKEINSTANCE

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

◆ DIDFT_NOCOLLECTION

#define DIDFT_NOCOLLECTION   0x00FFFF00

◆ DIDFT_NODATA

#define DIDFT_NODATA   0x00000080

◆ DIDFT_POV

#define DIDFT_POV   0x00000010

◆ DIDFT_PSHBUTTON

#define DIDFT_PSHBUTTON   0x00000004

◆ DIDFT_RELAXIS

#define DIDFT_RELAXIS   0x00000001

◆ DIDFT_TGLBUTTON

#define DIDFT_TGLBUTTON   0x00000008

◆ DIDOI_ASPECTACCEL

#define DIDOI_ASPECTACCEL   0x00000300

◆ DIDOI_ASPECTFORCE

#define DIDOI_ASPECTFORCE   0x00000400

◆ DIDOI_ASPECTMASK

#define DIDOI_ASPECTMASK   0x00000F00

◆ DIDOI_ASPECTPOSITION

#define DIDOI_ASPECTPOSITION   0x00000100

◆ DIDOI_ASPECTVELOCITY

#define DIDOI_ASPECTVELOCITY   0x00000200

◆ DIDOI_FFACTUATOR

#define DIDOI_FFACTUATOR   0x00000001

◆ DIDOI_FFEFFECTTRIGGER

#define DIDOI_FFEFFECTTRIGGER   0x00000002

◆ DIDOI_POLLED

#define DIDOI_POLLED   0x00008000

◆ DIEB_NOTRIGGER

#define DIEB_NOTRIGGER   0xFFFFFFFF

◆ DIEDFL_ALLDEVICES

#define DIEDFL_ALLDEVICES   0x00000000

◆ DIEDFL_ATTACHEDONLY

#define DIEDFL_ATTACHEDONLY   0x00000001

◆ DIEDFL_FORCEFEEDBACK

#define DIEDFL_FORCEFEEDBACK   0x00000100

◆ DIEFF_CARTESIAN

#define DIEFF_CARTESIAN   0x00000010

◆ DIEFF_OBJECTIDS

#define DIEFF_OBJECTIDS   0x00000001

◆ DIEFF_OBJECTOFFSETS

#define DIEFF_OBJECTOFFSETS   0x00000002

◆ DIEFF_POLAR

#define DIEFF_POLAR   0x00000020

◆ DIEFF_SPHERICAL

#define DIEFF_SPHERICAL   0x00000040

◆ DIEFT_ALL

#define DIEFT_ALL   0x00000000

◆ DIEFT_CONDITION

#define DIEFT_CONDITION   0x00000004

◆ DIEFT_CONSTANTFORCE

#define DIEFT_CONSTANTFORCE   0x00000001

◆ DIEFT_CUSTOMFORCE

#define DIEFT_CUSTOMFORCE   0x00000005

◆ DIEFT_DEADBAND

#define DIEFT_DEADBAND   0x00004000

◆ DIEFT_FFATTACK

#define DIEFT_FFATTACK   0x00000200

◆ DIEFT_FFFADE

#define DIEFT_FFFADE   0x00000400

◆ DIEFT_GETTYPE

#define DIEFT_GETTYPE (   n)    LOBYTE(n)

◆ DIEFT_HARDWARE

#define DIEFT_HARDWARE   0x000000FF

◆ DIEFT_PERIODIC

#define DIEFT_PERIODIC   0x00000003

◆ DIEFT_POSNEGCOEFFICIENTS

#define DIEFT_POSNEGCOEFFICIENTS   0x00001000

◆ DIEFT_POSNEGSATURATION

#define DIEFT_POSNEGSATURATION   0x00002000

◆ DIEFT_RAMPFORCE

#define DIEFT_RAMPFORCE   0x00000002

◆ DIEFT_SATURATION

#define DIEFT_SATURATION   0x00000800

◆ DIEGES_EMULATED

#define DIEGES_EMULATED   0x00000002

◆ DIEGES_PLAYING

#define DIEGES_PLAYING   0x00000001

◆ DIENUM_CONTINUE

#define DIENUM_CONTINUE   1

◆ DIENUM_STOP

#define DIENUM_STOP   0

◆ DIEP_ALLPARAMS

#define DIEP_ALLPARAMS   0x000001FF

◆ DIEP_AXES

#define DIEP_AXES   0x00000020

◆ DIEP_DIRECTION

#define DIEP_DIRECTION   0x00000040

◆ DIEP_DURATION

#define DIEP_DURATION   0x00000001

◆ DIEP_ENVELOPE

#define DIEP_ENVELOPE   0x00000080

◆ DIEP_GAIN

#define DIEP_GAIN   0x00000004

◆ DIEP_NODOWNLOAD

#define DIEP_NODOWNLOAD   0x80000000

◆ DIEP_NORESTART

#define DIEP_NORESTART   0x40000000

◆ DIEP_SAMPLEPERIOD

#define DIEP_SAMPLEPERIOD   0x00000002

◆ DIEP_START

#define DIEP_START   0x20000000

◆ DIEP_TRIGGERBUTTON

#define DIEP_TRIGGERBUTTON   0x00000008

◆ DIEP_TRIGGERREPEATINTERVAL

#define DIEP_TRIGGERREPEATINTERVAL   0x00000010

◆ DIEP_TYPESPECIFICPARAMS

#define DIEP_TYPESPECIFICPARAMS   0x00000100

◆ DIERR_ACQUIRED

#define DIERR_ACQUIRED    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_BUSY)

The operation cannot be performed while the device is acquired.

◆ DIERR_ALREADYINITIALIZED

#define DIERR_ALREADYINITIALIZED    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_ALREADY_INITIALIZED)

This object is already initialized

◆ DIERR_BADDRIVERVER

#define DIERR_BADDRIVERVER    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_BAD_DRIVER_LEVEL)

The object could not be created due to an incompatible driver version or mismatched or incomplete driver components.

◆ DIERR_BETADIRECTINPUTVERSION

#define DIERR_BETADIRECTINPUTVERSION    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_RMODE_APP)

The application was written for an unsupported prerelease version of DirectInput.

◆ DIERR_DEVICEFULL

#define DIERR_DEVICEFULL   0x80040201L

The device is full.

◆ DIERR_DEVICENOTREG

#define DIERR_DEVICENOTREG   REGDB_E_CLASSNOTREG

The device or device instance or effect is not registered with DirectInput.

◆ DIERR_EFFECTPLAYING

#define DIERR_EFFECTPLAYING   0x80040208L

An attempt was made to modify parameters of an effect while it is playing. Not all hardware devices support altering the parameters of an effect while it is playing.

◆ DIERR_GENERIC

#define DIERR_GENERIC   E_FAIL

An undetermined error occured inside the DInput subsystem

◆ DIERR_HANDLEEXISTS

#define DIERR_HANDLEEXISTS   E_ACCESSDENIED

The device already has an event notification associated with it.

◆ DIERR_HASEFFECTS

#define DIERR_HASEFFECTS   0x80040204L

The device cannot be reinitialized because there are still effects attached to it.

◆ DIERR_INCOMPLETEEFFECT

#define DIERR_INCOMPLETEEFFECT   0x80040206L

The effect could not be downloaded because essential information is missing. For example, no axes have been associated with the effect, or no type-specific information has been created.

◆ DIERR_INPUTLOST

#define DIERR_INPUTLOST    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_READ_FAULT)

Access to the device has been lost. It must be re-acquired.

◆ DIERR_INSUFFICIENTPRIVS

#define DIERR_INSUFFICIENTPRIVS   0x80040200L

Unable to IDirectInputJoyConfig_Acquire because the user does not have sufficient privileges to change the joystick configuration.

◆ DIERR_INVALIDPARAM

#define DIERR_INVALIDPARAM   E_INVALIDARG

An invalid parameter was passed to the returning function, or the object was not in a state that admitted the function to be called.

◆ DIERR_MOREDATA

#define DIERR_MOREDATA   0x80040202L

Not all the requested information fit into the buffer.

◆ DIERR_NOAGGREGATION

#define DIERR_NOAGGREGATION   CLASS_E_NOAGGREGATION

This object does not support aggregation

◆ DIERR_NOINTERFACE

#define DIERR_NOINTERFACE   E_NOINTERFACE

The specified interface is not supported by the object

◆ DIERR_NOTACQUIRED

#define DIERR_NOTACQUIRED    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_INVALID_ACCESS)

The operation cannot be performed unless the device is acquired.

◆ DIERR_NOTBUFFERED

#define DIERR_NOTBUFFERED   0x80040207L

Attempted to read buffered device data from a device that is not buffered.

◆ DIERR_NOTDOWNLOADED

#define DIERR_NOTDOWNLOADED   0x80040203L

The effect is not downloaded.

◆ DIERR_NOTEXCLUSIVEACQUIRED

#define DIERR_NOTEXCLUSIVEACQUIRED   0x80040205L

The operation cannot be performed unless the device is acquired in DISCL_EXCLUSIVE mode.

◆ DIERR_NOTFOUND

#define DIERR_NOTFOUND    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_FILE_NOT_FOUND)

The requested object does not exist.

◆ DIERR_NOTINITIALIZED

#define DIERR_NOTINITIALIZED    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NOT_READY)

This object has not been initialized

◆ DIERR_OBJECTNOTFOUND

#define DIERR_OBJECTNOTFOUND    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_FILE_NOT_FOUND)

The requested object does not exist.

◆ DIERR_OLDDIRECTINPUTVERSION

#define DIERR_OLDDIRECTINPUTVERSION    MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_OLD_WIN_VERSION)

The application requires a newer version of DirectInput.

◆ DIERR_OTHERAPPHASPRIO

#define DIERR_OTHERAPPHASPRIO   E_ACCESSDENIED

Another app has a higher priority level, preventing this call from succeeding.

◆ DIERR_OUTOFMEMORY

#define DIERR_OUTOFMEMORY   E_OUTOFMEMORY

The DInput subsystem couldn't allocate sufficient memory to complete the caller's request.

◆ DIERR_READONLY

#define DIERR_READONLY   E_ACCESSDENIED

The specified property cannot be changed.

◆ DIERR_UNSUPPORTED

#define DIERR_UNSUPPORTED   E_NOTIMPL

The function called is not supported at this time

◆ DIES_NODOWNLOAD

#define DIES_NODOWNLOAD   0x80000000

◆ DIES_SOLO

#define DIES_SOLO   0x00000001

◆ DIGDD_PEEK

#define DIGDD_PEEK   0x00000001

◆ DIGFFS_ACTUATORSOFF

#define DIGFFS_ACTUATORSOFF   0x00000020

◆ DIGFFS_ACTUATORSON

#define DIGFFS_ACTUATORSON   0x00000010

◆ DIGFFS_DEVICELOST

#define DIGFFS_DEVICELOST   0x80000000

◆ DIGFFS_EMPTY

#define DIGFFS_EMPTY   0x00000001

◆ DIGFFS_PAUSED

#define DIGFFS_PAUSED   0x00000004

◆ DIGFFS_POWEROFF

#define DIGFFS_POWEROFF   0x00000080

◆ DIGFFS_POWERON

#define DIGFFS_POWERON   0x00000040

◆ DIGFFS_SAFETYSWITCHOFF

#define DIGFFS_SAFETYSWITCHOFF   0x00000200

◆ DIGFFS_SAFETYSWITCHON

#define DIGFFS_SAFETYSWITCHON   0x00000100

◆ DIGFFS_STOPPED

#define DIGFFS_STOPPED   0x00000002

◆ DIGFFS_USERFFSWITCHOFF

#define DIGFFS_USERFFSWITCHOFF   0x00000800

◆ DIGFFS_USERFFSWITCHON

#define DIGFFS_USERFFSWITCHON   0x00000400

◆ DIJOFS_BUTTON

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

◆ DIJOFS_BUTTON0

#define DIJOFS_BUTTON0   DIJOFS_BUTTON(0)

◆ DIJOFS_BUTTON1

#define DIJOFS_BUTTON1   DIJOFS_BUTTON(1)

◆ DIJOFS_BUTTON10

#define DIJOFS_BUTTON10   DIJOFS_BUTTON(10)

◆ DIJOFS_BUTTON11

#define DIJOFS_BUTTON11   DIJOFS_BUTTON(11)

◆ DIJOFS_BUTTON12

#define DIJOFS_BUTTON12   DIJOFS_BUTTON(12)

◆ DIJOFS_BUTTON13

#define DIJOFS_BUTTON13   DIJOFS_BUTTON(13)

◆ DIJOFS_BUTTON14

#define DIJOFS_BUTTON14   DIJOFS_BUTTON(14)

◆ DIJOFS_BUTTON15

#define DIJOFS_BUTTON15   DIJOFS_BUTTON(15)

◆ DIJOFS_BUTTON16

#define DIJOFS_BUTTON16   DIJOFS_BUTTON(16)

◆ DIJOFS_BUTTON17

#define DIJOFS_BUTTON17   DIJOFS_BUTTON(17)

◆ DIJOFS_BUTTON18

#define DIJOFS_BUTTON18   DIJOFS_BUTTON(18)

◆ DIJOFS_BUTTON19

#define DIJOFS_BUTTON19   DIJOFS_BUTTON(19)

◆ DIJOFS_BUTTON2

#define DIJOFS_BUTTON2   DIJOFS_BUTTON(2)

◆ DIJOFS_BUTTON20

#define DIJOFS_BUTTON20   DIJOFS_BUTTON(20)

◆ DIJOFS_BUTTON21

#define DIJOFS_BUTTON21   DIJOFS_BUTTON(21)

◆ DIJOFS_BUTTON22

#define DIJOFS_BUTTON22   DIJOFS_BUTTON(22)

◆ DIJOFS_BUTTON23

#define DIJOFS_BUTTON23   DIJOFS_BUTTON(23)

◆ DIJOFS_BUTTON24

#define DIJOFS_BUTTON24   DIJOFS_BUTTON(24)

◆ DIJOFS_BUTTON25

#define DIJOFS_BUTTON25   DIJOFS_BUTTON(25)

◆ DIJOFS_BUTTON26

#define DIJOFS_BUTTON26   DIJOFS_BUTTON(26)

◆ DIJOFS_BUTTON27

#define DIJOFS_BUTTON27   DIJOFS_BUTTON(27)

◆ DIJOFS_BUTTON28

#define DIJOFS_BUTTON28   DIJOFS_BUTTON(28)

◆ DIJOFS_BUTTON29

#define DIJOFS_BUTTON29   DIJOFS_BUTTON(29)

◆ DIJOFS_BUTTON3

#define DIJOFS_BUTTON3   DIJOFS_BUTTON(3)

◆ DIJOFS_BUTTON30

#define DIJOFS_BUTTON30   DIJOFS_BUTTON(30)

◆ DIJOFS_BUTTON31

#define DIJOFS_BUTTON31   DIJOFS_BUTTON(31)

◆ DIJOFS_BUTTON4

#define DIJOFS_BUTTON4   DIJOFS_BUTTON(4)

◆ DIJOFS_BUTTON5

#define DIJOFS_BUTTON5   DIJOFS_BUTTON(5)

◆ DIJOFS_BUTTON6

#define DIJOFS_BUTTON6   DIJOFS_BUTTON(6)

◆ DIJOFS_BUTTON7

#define DIJOFS_BUTTON7   DIJOFS_BUTTON(7)

◆ DIJOFS_BUTTON8

#define DIJOFS_BUTTON8   DIJOFS_BUTTON(8)

◆ DIJOFS_BUTTON9

#define DIJOFS_BUTTON9   DIJOFS_BUTTON(9)

◆ DIJOFS_POV

#define DIJOFS_POV (   n)
Value:
(FIELD_OFFSET(DIJOYSTATE, rgdwPOV) + \
(n) * sizeof(DWORD))
typedef DWORD(FAR PASCAL *LPCLIPPERCALLBACK)(LPDIRECTDRAWCLIPPER lpDDClipper
Definition: dinput.h:1216

◆ DIJOFS_RX

#define DIJOFS_RX   FIELD_OFFSET(DIJOYSTATE, lRx)

◆ DIJOFS_RY

#define DIJOFS_RY   FIELD_OFFSET(DIJOYSTATE, lRy)

◆ DIJOFS_RZ

#define DIJOFS_RZ   FIELD_OFFSET(DIJOYSTATE, lRz)

◆ DIJOFS_SLIDER

#define DIJOFS_SLIDER (   n)
Value:
(FIELD_OFFSET(DIJOYSTATE, rglSlider) + \
(n) * sizeof(LONG))

◆ DIJOFS_X

#define DIJOFS_X   FIELD_OFFSET(DIJOYSTATE, lX)

◆ DIJOFS_Y

#define DIJOFS_Y   FIELD_OFFSET(DIJOYSTATE, lY)

◆ DIJOFS_Z

#define DIJOFS_Z   FIELD_OFFSET(DIJOYSTATE, lZ)

◆ DIK_0

#define DIK_0   0x0B

◆ DIK_1

#define DIK_1   0x02

◆ DIK_2

#define DIK_2   0x03

◆ DIK_3

#define DIK_3   0x04

◆ DIK_4

#define DIK_4   0x05

◆ DIK_5

#define DIK_5   0x06

◆ DIK_6

#define DIK_6   0x07

◆ DIK_7

#define DIK_7   0x08

◆ DIK_8

#define DIK_8   0x09

◆ DIK_9

#define DIK_9   0x0A

◆ DIK_A

#define DIK_A   0x1E

◆ DIK_ADD

#define DIK_ADD   0x4E
  • on numeric keypad

◆ DIK_APOSTROPHE

#define DIK_APOSTROPHE   0x28

◆ DIK_APPS

#define DIK_APPS   0xDD

AppMenu key

◆ DIK_AT

#define DIK_AT   0x91

(NEC PC98)

◆ DIK_AX

#define DIK_AX   0x96

(Japan AX)

◆ DIK_B

#define DIK_B   0x30

◆ DIK_BACK

#define DIK_BACK   0x0E

backspace

◆ DIK_BACKSLASH

#define DIK_BACKSLASH   0x2B

◆ DIK_BACKSPACE

#define DIK_BACKSPACE   DIK_BACK

backspace

◆ DIK_C

#define DIK_C   0x2E

◆ DIK_CAPITAL

#define DIK_CAPITAL   0x3A

◆ DIK_CAPSLOCK

#define DIK_CAPSLOCK   DIK_CAPITAL

CapsLock

◆ DIK_CIRCUMFLEX

#define DIK_CIRCUMFLEX   0x90

(Japanese keyboard)

◆ DIK_COLON

#define DIK_COLON   0x92

(NEC PC98)

◆ DIK_COMMA

#define DIK_COMMA   0x33

◆ DIK_CONVERT

#define DIK_CONVERT   0x79

(Japanese keyboard)

◆ DIK_D

#define DIK_D   0x20

◆ DIK_DECIMAL

#define DIK_DECIMAL   0x53

. on numeric keypad

◆ DIK_DELETE

#define DIK_DELETE   0xD3

Delete on arrow keypad

◆ DIK_DIVIDE

#define DIK_DIVIDE   0xB5

/ on numeric keypad

◆ DIK_DOWN

#define DIK_DOWN   0xD0

DownArrow on arrow keypad

◆ DIK_DOWNARROW

#define DIK_DOWNARROW   DIK_DOWN

DownArrow on arrow keypad

◆ DIK_E

#define DIK_E   0x12

◆ DIK_END

#define DIK_END   0xCF

End on arrow keypad

◆ DIK_EQUALS

#define DIK_EQUALS   0x0D

◆ DIK_ESCAPE

#define DIK_ESCAPE   0x01

Redocumentation fixme: how to tell doxygen the hex values for each?

◆ DIK_F

#define DIK_F   0x21

◆ DIK_F1

#define DIK_F1   0x3B

◆ DIK_F10

#define DIK_F10   0x44

◆ DIK_F11

#define DIK_F11   0x57

◆ DIK_F12

#define DIK_F12   0x58

◆ DIK_F13

#define DIK_F13   0x64

(NEC PC98)

◆ DIK_F14

#define DIK_F14   0x65

(NEC PC98)

◆ DIK_F15

#define DIK_F15   0x66

(NEC PC98)

◆ DIK_F2

#define DIK_F2   0x3C

◆ DIK_F3

#define DIK_F3   0x3D

◆ DIK_F4

#define DIK_F4   0x3E

◆ DIK_F5

#define DIK_F5   0x3F

◆ DIK_F6

#define DIK_F6   0x40

◆ DIK_F7

#define DIK_F7   0x41

◆ DIK_F8

#define DIK_F8   0x42

◆ DIK_F9

#define DIK_F9   0x43

◆ DIK_G

#define DIK_G   0x22

◆ DIK_GRAVE

#define DIK_GRAVE   0x29

accent grave

◆ DIK_H

#define DIK_H   0x23

◆ DIK_HOME

#define DIK_HOME   0xC7

Home on arrow keypad

◆ DIK_I

#define DIK_I   0x17

◆ DIK_INSERT

#define DIK_INSERT   0xD2

Insert on arrow keypad

◆ DIK_J

#define DIK_J   0x24

◆ DIK_K

#define DIK_K   0x25

◆ DIK_KANA

#define DIK_KANA   0x70

(Japanese keyboard)

◆ DIK_KANJI

#define DIK_KANJI   0x94

(Japanese keyboard)

◆ DIK_L

#define DIK_L   0x26

◆ DIK_LALT

#define DIK_LALT   DIK_LMENU

left Alt

◆ DIK_LBRACKET

#define DIK_LBRACKET   0x1A

◆ DIK_LCONTROL

#define DIK_LCONTROL   0x1D

◆ DIK_LEFT

#define DIK_LEFT   0xCB

LeftArrow on arrow keypad

◆ DIK_LEFTARROW

#define DIK_LEFTARROW   DIK_LEFT

LeftArrow on arrow keypad

◆ DIK_LMENU

#define DIK_LMENU   0x38

left Alt

◆ DIK_LSHIFT

#define DIK_LSHIFT   0x2A

◆ DIK_LWIN

#define DIK_LWIN   0xDB

Left Windows key

◆ DIK_M

#define DIK_M   0x32

◆ DIK_MINUS

#define DIK_MINUS   0x0C
  • on main keyboard

◆ DIK_MULTIPLY

#define DIK_MULTIPLY   0x37
  • on numeric keypad

◆ DIK_N

#define DIK_N   0x31

◆ DIK_NEXT

#define DIK_NEXT   0xD1

PgDn on arrow keypad

◆ DIK_NOCONVERT

#define DIK_NOCONVERT   0x7B

(Japanese keyboard)

◆ DIK_NUMLOCK

#define DIK_NUMLOCK   0x45

◆ DIK_NUMPAD0

#define DIK_NUMPAD0   0x52

◆ DIK_NUMPAD1

#define DIK_NUMPAD1   0x4F

◆ DIK_NUMPAD2

#define DIK_NUMPAD2   0x50

◆ DIK_NUMPAD3

#define DIK_NUMPAD3   0x51

◆ DIK_NUMPAD4

#define DIK_NUMPAD4   0x4B

◆ DIK_NUMPAD5

#define DIK_NUMPAD5   0x4C

◆ DIK_NUMPAD6

#define DIK_NUMPAD6   0x4D

◆ DIK_NUMPAD7

#define DIK_NUMPAD7   0x47

◆ DIK_NUMPAD8

#define DIK_NUMPAD8   0x48

◆ DIK_NUMPAD9

#define DIK_NUMPAD9   0x49

◆ DIK_NUMPADCOMMA

#define DIK_NUMPADCOMMA   0xB3

, on numeric keypad (NEC PC98)

◆ DIK_NUMPADENTER

#define DIK_NUMPADENTER   0x9C

Enter on numeric keypad

◆ DIK_NUMPADEQUALS

#define DIK_NUMPADEQUALS   0x8D

= on numeric keypad (NEC PC98)

◆ DIK_NUMPADMINUS

#define DIK_NUMPADMINUS   DIK_SUBTRACT
  • on numeric keypad

◆ DIK_NUMPADPERIOD

#define DIK_NUMPADPERIOD   DIK_DECIMAL

. on numeric keypad

◆ DIK_NUMPADPLUS

#define DIK_NUMPADPLUS   DIK_ADD
  • on numeric keypad

◆ DIK_NUMPADSLASH

#define DIK_NUMPADSLASH   DIK_DIVIDE

/ on numeric keypad

◆ DIK_NUMPADSTAR

#define DIK_NUMPADSTAR   DIK_MULTIPLY
  • on numeric keypad

◆ DIK_O

#define DIK_O   0x18

◆ DIK_P

#define DIK_P   0x19

◆ DIK_PERIOD

#define DIK_PERIOD   0x34

. on main keyboard

◆ DIK_PGDN

#define DIK_PGDN   DIK_NEXT

PgDn on arrow keypad

◆ DIK_PGUP

#define DIK_PGUP   DIK_PRIOR

PgUp on arrow keypad

◆ DIK_PRIOR

#define DIK_PRIOR   0xC9

PgUp on arrow keypad

◆ DIK_Q

#define DIK_Q   0x10

◆ DIK_R

#define DIK_R   0x13

◆ DIK_RALT

#define DIK_RALT   DIK_RMENU

right Alt

◆ DIK_RBRACKET

#define DIK_RBRACKET   0x1B

◆ DIK_RCONTROL

#define DIK_RCONTROL   0x9D

◆ DIK_RETURN

#define DIK_RETURN   0x1C

Enter on main keyboard

◆ DIK_RIGHT

#define DIK_RIGHT   0xCD

RightArrow on arrow keypad

◆ DIK_RIGHTARROW

#define DIK_RIGHTARROW   DIK_RIGHT

RightArrow on arrow keypad

◆ DIK_RMENU

#define DIK_RMENU   0xB8

right Alt

◆ DIK_RSHIFT

#define DIK_RSHIFT   0x36

◆ DIK_RWIN

#define DIK_RWIN   0xDC

Right Windows key

◆ DIK_S

#define DIK_S   0x1F

◆ DIK_SCROLL

#define DIK_SCROLL   0x46

Scroll Lock

◆ DIK_SEMICOLON

#define DIK_SEMICOLON   0x27

◆ DIK_SLASH

#define DIK_SLASH   0x35

/ on main keyboard

◆ DIK_SPACE

#define DIK_SPACE   0x39

◆ DIK_STOP

#define DIK_STOP   0x95

(NEC PC98)

◆ DIK_SUBTRACT

#define DIK_SUBTRACT   0x4A
  • on numeric keypad

◆ DIK_SYSRQ

#define DIK_SYSRQ   0xB7

◆ DIK_T

#define DIK_T   0x14

◆ DIK_TAB

#define DIK_TAB   0x0F

◆ DIK_U

#define DIK_U   0x16

◆ DIK_UNDERLINE

#define DIK_UNDERLINE   0x93

(NEC PC98)

◆ DIK_UNLABELED

#define DIK_UNLABELED   0x97

(J3100)

◆ DIK_UP

#define DIK_UP   0xC8

UpArrow on arrow keypad

◆ DIK_UPARROW

#define DIK_UPARROW   DIK_UP

UpArrow on arrow keypad

◆ DIK_V

#define DIK_V   0x2F

◆ DIK_W

#define DIK_W   0x11

◆ DIK_X

#define DIK_X   0x2D

◆ DIK_Y

#define DIK_Y   0x15

◆ DIK_YEN

#define DIK_YEN   0x7D

(Japanese keyboard)

◆ DIK_Z

#define DIK_Z   0x2C

◆ DIMOFS_BUTTON0

#define DIMOFS_BUTTON0   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 0)

◆ DIMOFS_BUTTON1

#define DIMOFS_BUTTON1   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 1)

◆ DIMOFS_BUTTON2

#define DIMOFS_BUTTON2   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 2)

◆ DIMOFS_BUTTON3

#define DIMOFS_BUTTON3   (FIELD_OFFSET(DIMOUSESTATE, rgbButtons) + 3)

◆ DIMOFS_X

#define DIMOFS_X   FIELD_OFFSET(DIMOUSESTATE, lX)

◆ DIMOFS_Y

#define DIMOFS_Y   FIELD_OFFSET(DIMOUSESTATE, lY)

◆ DIMOFS_Z

#define DIMOFS_Z   FIELD_OFFSET(DIMOUSESTATE, lZ)

◆ DIPH_BYID

#define DIPH_BYID   2

◆ DIPH_BYOFFSET

#define DIPH_BYOFFSET   1

◆ DIPH_DEVICE

#define DIPH_DEVICE   0

◆ DIPROP_AUTOCENTER

#define DIPROP_AUTOCENTER   MAKEDIPROP(9)

◆ DIPROP_AXISMODE

#define DIPROP_AXISMODE   MAKEDIPROP(2)

◆ DIPROP_BUFFERSIZE

#define DIPROP_BUFFERSIZE   MAKEDIPROP(1)

◆ DIPROP_CALIBRATIONMODE

#define DIPROP_CALIBRATIONMODE   MAKEDIPROP(10)

◆ DIPROP_DEADZONE

#define DIPROP_DEADZONE   MAKEDIPROP(5)

◆ DIPROP_FFGAIN

#define DIPROP_FFGAIN   MAKEDIPROP(7)

◆ DIPROP_FFLOAD

#define DIPROP_FFLOAD   MAKEDIPROP(8)

◆ DIPROP_GRANULARITY

#define DIPROP_GRANULARITY   MAKEDIPROP(3)

◆ DIPROP_RANGE

#define DIPROP_RANGE   MAKEDIPROP(4)

◆ DIPROP_SATURATION

#define DIPROP_SATURATION   MAKEDIPROP(6)

◆ DIPROPAUTOCENTER_OFF

#define DIPROPAUTOCENTER_OFF   0

◆ DIPROPAUTOCENTER_ON

#define DIPROPAUTOCENTER_ON   1

◆ DIPROPAXISMODE_ABS

#define DIPROPAXISMODE_ABS   0

◆ DIPROPAXISMODE_REL

#define DIPROPAXISMODE_REL   1

◆ DIPROPCALIBRATIONMODE_COOKED

#define DIPROPCALIBRATIONMODE_COOKED   0

◆ DIPROPCALIBRATIONMODE_RAW

#define DIPROPCALIBRATIONMODE_RAW   1

◆ DIPROPRANGE_NOMAX

#define DIPROPRANGE_NOMAX   ((LONG)0x7FFFFFFF)

◆ DIPROPRANGE_NOMIN

#define DIPROPRANGE_NOMIN   ((LONG)0x80000000)

◆ DIRECTINPUT_VERSION

#define DIRECTINPUT_VERSION   0x0500

◆ DirectInputCreate

#define DirectInputCreate   DirectInputCreateA

◆ DISCL_BACKGROUND

#define DISCL_BACKGROUND   0x00000008

◆ DISCL_EXCLUSIVE

#define DISCL_EXCLUSIVE   0x00000001

◆ DISCL_FOREGROUND

#define DISCL_FOREGROUND   0x00000004

◆ DISCL_NONEXCLUSIVE

#define DISCL_NONEXCLUSIVE   0x00000002

◆ DISEQUENCE_COMPARE

#define DISEQUENCE_COMPARE (   dwSequence1,
  cmp,
  dwSequence2 
)     ((int)((dwSequence1) - (dwSequence2)) cmp 0)

◆ DISFFC_CONTINUE

#define DISFFC_CONTINUE   0x00000008

◆ DISFFC_PAUSE

#define DISFFC_PAUSE   0x00000004

◆ DISFFC_RESET

#define DISFFC_RESET   0x00000001

◆ DISFFC_SETACTUATORSOFF

#define DISFFC_SETACTUATORSOFF   0x00000020

◆ DISFFC_SETACTUATORSON

#define DISFFC_SETACTUATORSON   0x00000010

◆ DISFFC_STOPALL

#define DISFFC_STOPALL   0x00000002

◆ E_PENDING

#define E_PENDING   0x80070007L

Data is not yet available.

◆ GET_DIDEVICE_SUBTYPE

#define GET_DIDEVICE_SUBTYPE (   dwDevType)    HIBYTE(dwDevType)

◆ GET_DIDEVICE_TYPE

#define GET_DIDEVICE_TYPE (   dwDevType)    LOBYTE(dwDevType)

◆ IDirectInput

#define IDirectInput   IDirectInputA

◆ IDirectInput2

#define IDirectInput2   IDirectInput2A

◆ IDirectInput2_AddRef

#define IDirectInput2_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectInput2_CreateDevice

#define IDirectInput2_CreateDevice (   p,
  a,
  b,
 
)    (p)->lpVtbl->CreateDevice(p,a,b,c)

◆ IDirectInput2_EnumDevices

#define IDirectInput2_EnumDevices (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->EnumDevices(p,a,b,c,d)

◆ IDirectInput2_FindDevice

#define IDirectInput2_FindDevice (   p,
  a,
  b,
 
)    (p)->lpVtbl->FindDevice(p,a,b,c)

◆ IDirectInput2_GetDeviceStatus

#define IDirectInput2_GetDeviceStatus (   p,
 
)    (p)->lpVtbl->GetDeviceStatus(p,a)

◆ IDirectInput2_Initialize

#define IDirectInput2_Initialize (   p,
  a,
 
)    (p)->lpVtbl->Initialize(p,a,b)

◆ IDirectInput2_QueryInterface

#define IDirectInput2_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectInput2_Release

#define IDirectInput2_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectInput2_RunControlPanel

#define IDirectInput2_RunControlPanel (   p,
  a,
 
)    (p)->lpVtbl->RunControlPanel(p,a,b)

◆ IDirectInput2Vtbl

#define IDirectInput2Vtbl   IDirectInput2AVtbl

◆ IDirectInput_AddRef

#define IDirectInput_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectInput_CreateDevice

#define IDirectInput_CreateDevice (   p,
  a,
  b,
 
)    (p)->lpVtbl->CreateDevice(p,a,b,c)

◆ IDirectInput_EnumDevices

#define IDirectInput_EnumDevices (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->EnumDevices(p,a,b,c,d)

◆ IDirectInput_GetDeviceStatus

#define IDirectInput_GetDeviceStatus (   p,
 
)    (p)->lpVtbl->GetDeviceStatus(p,a)

◆ IDirectInput_Initialize

#define IDirectInput_Initialize (   p,
  a,
 
)    (p)->lpVtbl->Initialize(p,a,b)

◆ IDirectInput_QueryInterface

#define IDirectInput_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectInput_Release

#define IDirectInput_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectInput_RunControlPanel

#define IDirectInput_RunControlPanel (   p,
  a,
 
)    (p)->lpVtbl->RunControlPanel(p,a,b)

◆ IDirectInputDevice

#define IDirectInputDevice   IDirectInputDeviceA

◆ IDirectInputDevice2

#define IDirectInputDevice2   IDirectInputDevice2A

◆ IDirectInputDevice2_Acquire

#define IDirectInputDevice2_Acquire (   p)    (p)->lpVtbl->Acquire(p)

◆ IDirectInputDevice2_AddRef

#define IDirectInputDevice2_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectInputDevice2_CreateEffect

#define IDirectInputDevice2_CreateEffect (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->CreateEffect(p,a,b,c,d)

◆ IDirectInputDevice2_EnumCreatedEffectObjects

#define IDirectInputDevice2_EnumCreatedEffectObjects (   p,
  a,
  b,
 
)    (p)->lpVtbl->EnumCreatedEffectObjects(p,a,b,c)

◆ IDirectInputDevice2_EnumEffects

#define IDirectInputDevice2_EnumEffects (   p,
  a,
  b,
 
)    (p)->lpVtbl->EnumEffects(p,a,b,c)

◆ IDirectInputDevice2_EnumObjects

#define IDirectInputDevice2_EnumObjects (   p,
  a,
  b,
 
)    (p)->lpVtbl->EnumObjects(p,a,b,c)

◆ IDirectInputDevice2_Escape

#define IDirectInputDevice2_Escape (   p,
 
)    (p)->lpVtbl->Escape(p,a)

◆ IDirectInputDevice2_GetCapabilities

#define IDirectInputDevice2_GetCapabilities (   p,
 
)    (p)->lpVtbl->GetCapabilities(p,a)

◆ IDirectInputDevice2_GetDeviceData

#define IDirectInputDevice2_GetDeviceData (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->GetDeviceData(p,a,b,c,d)

◆ IDirectInputDevice2_GetDeviceInfo

#define IDirectInputDevice2_GetDeviceInfo (   p,
 
)    (p)->lpVtbl->GetDeviceInfo(p,a)

◆ IDirectInputDevice2_GetDeviceState

#define IDirectInputDevice2_GetDeviceState (   p,
  a,
 
)    (p)->lpVtbl->GetDeviceState(p,a,b)

◆ IDirectInputDevice2_GetEffectInfo

#define IDirectInputDevice2_GetEffectInfo (   p,
  a,
 
)    (p)->lpVtbl->GetEffectInfo(p,a,b)

◆ IDirectInputDevice2_GetForceFeedbackState

#define IDirectInputDevice2_GetForceFeedbackState (   p,
 
)    (p)->lpVtbl->GetForceFeedbackState(p,a)

◆ IDirectInputDevice2_GetObjectInfo

#define IDirectInputDevice2_GetObjectInfo (   p,
  a,
  b,
 
)    (p)->lpVtbl->GetObjectInfo(p,a,b,c)

◆ IDirectInputDevice2_GetProperty

#define IDirectInputDevice2_GetProperty (   p,
  a,
 
)    (p)->lpVtbl->GetProperty(p,a,b)

◆ IDirectInputDevice2_Initialize

#define IDirectInputDevice2_Initialize (   p,
  a,
  b,
 
)    (p)->lpVtbl->Initialize(p,a,b,c)

◆ IDirectInputDevice2_Poll

#define IDirectInputDevice2_Poll (   p)    (p)->lpVtbl->Poll(p)

◆ IDirectInputDevice2_QueryInterface

#define IDirectInputDevice2_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectInputDevice2_Release

#define IDirectInputDevice2_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectInputDevice2_RunControlPanel

#define IDirectInputDevice2_RunControlPanel (   p,
  a,
 
)    (p)->lpVtbl->RunControlPanel(p,a,b)

◆ IDirectInputDevice2_SendDeviceData

#define IDirectInputDevice2_SendDeviceData (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->SendDeviceData(p,a,b,c,d)

◆ IDirectInputDevice2_SendForceFeedbackCommand

#define IDirectInputDevice2_SendForceFeedbackCommand (   p,
 
)    (p)->lpVtbl->SendForceFeedbackCommand(p,a)

◆ IDirectInputDevice2_SetCooperativeLevel

#define IDirectInputDevice2_SetCooperativeLevel (   p,
  a,
 
)    (p)->lpVtbl->SetCooperativeLevel(p,a,b)

◆ IDirectInputDevice2_SetDataFormat

#define IDirectInputDevice2_SetDataFormat (   p,
 
)    (p)->lpVtbl->SetDataFormat(p,a)

◆ IDirectInputDevice2_SetEventNotification

#define IDirectInputDevice2_SetEventNotification (   p,
 
)    (p)->lpVtbl->SetEventNotification(p,a)

◆ IDirectInputDevice2_SetProperty

#define IDirectInputDevice2_SetProperty (   p,
  a,
 
)    (p)->lpVtbl->SetProperty(p,a,b)

◆ IDirectInputDevice2_Unacquire

#define IDirectInputDevice2_Unacquire (   p)    (p)->lpVtbl->Unacquire(p)

◆ IDirectInputDevice2Vtbl

#define IDirectInputDevice2Vtbl   IDirectInputDevice2AVtbl

◆ IDirectInputDevice_Acquire

#define IDirectInputDevice_Acquire (   p)    (p)->lpVtbl->Acquire(p)

◆ IDirectInputDevice_AddRef

#define IDirectInputDevice_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectInputDevice_EnumObjects

#define IDirectInputDevice_EnumObjects (   p,
  a,
  b,
 
)    (p)->lpVtbl->EnumObjects(p,a,b,c)

◆ IDirectInputDevice_GetCapabilities

#define IDirectInputDevice_GetCapabilities (   p,
 
)    (p)->lpVtbl->GetCapabilities(p,a)

◆ IDirectInputDevice_GetDeviceData

#define IDirectInputDevice_GetDeviceData (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->GetDeviceData(p,a,b,c,d)

◆ IDirectInputDevice_GetDeviceInfo

#define IDirectInputDevice_GetDeviceInfo (   p,
 
)    (p)->lpVtbl->GetDeviceInfo(p,a)

◆ IDirectInputDevice_GetDeviceState

#define IDirectInputDevice_GetDeviceState (   p,
  a,
 
)    (p)->lpVtbl->GetDeviceState(p,a,b)

◆ IDirectInputDevice_GetObjectInfo

#define IDirectInputDevice_GetObjectInfo (   p,
  a,
  b,
 
)    (p)->lpVtbl->GetObjectInfo(p,a,b,c)

◆ IDirectInputDevice_GetProperty

#define IDirectInputDevice_GetProperty (   p,
  a,
 
)    (p)->lpVtbl->GetProperty(p,a,b)

◆ IDirectInputDevice_Initialize

#define IDirectInputDevice_Initialize (   p,
  a,
  b,
 
)    (p)->lpVtbl->Initialize(p,a,b,c)

◆ IDirectInputDevice_QueryInterface

#define IDirectInputDevice_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectInputDevice_Release

#define IDirectInputDevice_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectInputDevice_RunControlPanel

#define IDirectInputDevice_RunControlPanel (   p,
  a,
 
)    (p)->lpVtbl->RunControlPanel(p,a,b)

◆ IDirectInputDevice_SetCooperativeLevel

#define IDirectInputDevice_SetCooperativeLevel (   p,
  a,
 
)    (p)->lpVtbl->SetCooperativeLevel(p,a,b)

◆ IDirectInputDevice_SetDataFormat

#define IDirectInputDevice_SetDataFormat (   p,
 
)    (p)->lpVtbl->SetDataFormat(p,a)

◆ IDirectInputDevice_SetEventNotification

#define IDirectInputDevice_SetEventNotification (   p,
 
)    (p)->lpVtbl->SetEventNotification(p,a)

◆ IDirectInputDevice_SetProperty

#define IDirectInputDevice_SetProperty (   p,
  a,
 
)    (p)->lpVtbl->SetProperty(p,a,b)

◆ IDirectInputDevice_Unacquire

#define IDirectInputDevice_Unacquire (   p)    (p)->lpVtbl->Unacquire(p)

◆ IDirectInputDeviceVtbl

#define IDirectInputDeviceVtbl   IDirectInputDeviceAVtbl

◆ IDirectInputEffect_AddRef

#define IDirectInputEffect_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectInputEffect_Download

#define IDirectInputEffect_Download (   p)    (p)->lpVtbl->Download(p)

◆ IDirectInputEffect_Escape

#define IDirectInputEffect_Escape (   p,
 
)    (p)->lpVtbl->Escape(p,a)

◆ IDirectInputEffect_GetEffectGuid

#define IDirectInputEffect_GetEffectGuid (   p,
 
)    (p)->lpVtbl->GetEffectGuid(p,a)

◆ IDirectInputEffect_GetEffectStatus

#define IDirectInputEffect_GetEffectStatus (   p,
 
)    (p)->lpVtbl->GetEffectStatus(p,a)

◆ IDirectInputEffect_GetParameters

#define IDirectInputEffect_GetParameters (   p,
  a,
 
)    (p)->lpVtbl->GetParameters(p,a,b)

◆ IDirectInputEffect_Initialize

#define IDirectInputEffect_Initialize (   p,
  a,
  b,
 
)    (p)->lpVtbl->Initialize(p,a,b,c)

◆ IDirectInputEffect_QueryInterface

#define IDirectInputEffect_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectInputEffect_Release

#define IDirectInputEffect_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectInputEffect_SetParameters

#define IDirectInputEffect_SetParameters (   p,
  a,
 
)    (p)->lpVtbl->SetParameters(p,a,b)

◆ IDirectInputEffect_Start

#define IDirectInputEffect_Start (   p,
  a,
 
)    (p)->lpVtbl->Start(p,a,b)

◆ IDirectInputEffect_Stop

#define IDirectInputEffect_Stop (   p)    (p)->lpVtbl->Stop(p)

◆ IDirectInputEffect_Unload

#define IDirectInputEffect_Unload (   p)    (p)->lpVtbl->Unload(p)

◆ IDirectInputVtbl

#define IDirectInputVtbl   IDirectInputAVtbl

◆ IID_IDirectInput

#define IID_IDirectInput   IID_IDirectInputA

◆ IID_IDirectInput2

#define IID_IDirectInput2   IID_IDirectInput2A

◆ IID_IDirectInputDevice

#define IID_IDirectInputDevice   IID_IDirectInputDeviceA

◆ IID_IDirectInputDevice2

#define IID_IDirectInputDevice2   IID_IDirectInputDevice2A

◆ INTERFACE [1/9]

#define INTERFACE   IDirectInputEffect

◆ INTERFACE [2/9]

#define INTERFACE   IDirectInputDeviceW

◆ INTERFACE [3/9]

#define INTERFACE   IDirectInputDeviceA

◆ INTERFACE [4/9]

#define INTERFACE   IDirectInputDevice2W

◆ INTERFACE [5/9]

#define INTERFACE   IDirectInputDevice2A

◆ INTERFACE [6/9]

#define INTERFACE   IDirectInputW

◆ INTERFACE [7/9]

#define INTERFACE   IDirectInputA

◆ INTERFACE [8/9]

#define INTERFACE   IDirectInput2W

◆ INTERFACE [9/9]

#define INTERFACE   IDirectInput2A

◆ LPDIENUMDEVICEOBJECTSCALLBACK

#define LPDIENUMDEVICEOBJECTSCALLBACK   LPDIENUMDEVICEOBJECTSCALLBACKA

◆ LPDIENUMDEVICESCALLBACK

#define LPDIENUMDEVICESCALLBACK   LPDIENUMDEVICESCALLBACKA

◆ LPDIENUMEFFECTSCALLBACK

#define LPDIENUMEFFECTSCALLBACK   LPDIENUMEFFECTSCALLBACKA

◆ MAKEDIPROP

#define MAKEDIPROP (   prop)    ((REFGUID)(prop))

Typedef Documentation

◆ DICONDITION

typedef struct DICONDITION DICONDITION

◆ DICONSTANTFORCE

◆ DICUSTOMFORCE

typedef struct DICUSTOMFORCE DICUSTOMFORCE

◆ DIDATAFORMAT

typedef struct _DIDATAFORMAT DIDATAFORMAT

◆ DIDEVCAPS

typedef struct DIDEVCAPS DIDEVCAPS

◆ DIDEVCAPS_DX3

typedef struct DIDEVCAPS_DX3 DIDEVCAPS_DX3

◆ DIDEVICEINSTANCE

◆ DIDEVICEINSTANCE_DX3

◆ DIDEVICEINSTANCE_DX3A

◆ DIDEVICEINSTANCE_DX3W

◆ DIDEVICEINSTANCEA

◆ DIDEVICEINSTANCEW

◆ DIDEVICEOBJECTDATA

◆ DIDEVICEOBJECTINSTANCE

◆ DIDEVICEOBJECTINSTANCE_DX3

◆ DIDEVICEOBJECTINSTANCE_DX3A

◆ DIDEVICEOBJECTINSTANCE_DX3W

◆ DIDEVICEOBJECTINSTANCEA

◆ DIDEVICEOBJECTINSTANCEW

◆ DIEFFECT

typedef struct DIEFFECT DIEFFECT

◆ DIEFFECTINFO

◆ DIEFFECTINFOA

typedef struct DIEFFECTINFOA DIEFFECTINFOA

◆ DIEFFECTINFOW

typedef struct DIEFFECTINFOW DIEFFECTINFOW

◆ DIEFFESCAPE

typedef struct DIEFFESCAPE DIEFFESCAPE

◆ DIENVELOPE

typedef struct DIENVELOPE DIENVELOPE

◆ DIJOYSTATE

typedef struct DIJOYSTATE DIJOYSTATE

◆ DIJOYSTATE2

typedef struct DIJOYSTATE2 DIJOYSTATE2

◆ DIMOUSESTATE

typedef struct _DIMOUSESTATE DIMOUSESTATE

◆ DIOBJECTDATAFORMAT

◆ DIPERIODIC

typedef struct DIPERIODIC DIPERIODIC

◆ DIPROPDWORD

typedef struct DIPROPDWORD DIPROPDWORD

◆ DIPROPHEADER

typedef struct DIPROPHEADER DIPROPHEADER

◆ DIPROPRANGE

typedef struct DIPROPRANGE DIPROPRANGE

◆ DIRAMPFORCE

typedef struct DIRAMPFORCE DIRAMPFORCE

◆ LPCDICONDITION

typedef const DICONDITION* LPCDICONDITION

◆ LPCDICONSTANTFORCE

◆ LPCDICUSTOMFORCE

◆ LPCDIDATAFORMAT

typedef const DIDATAFORMAT* LPCDIDATAFORMAT

◆ LPCDIDEVICEINSTANCE

◆ LPCDIDEVICEINSTANCE_DX3

◆ LPCDIDEVICEINSTANCE_DX3A

◆ LPCDIDEVICEINSTANCE_DX3W

◆ LPCDIDEVICEINSTANCEA

◆ LPCDIDEVICEINSTANCEW

◆ LPCDIDEVICEOBJECTDATA

◆ LPCDIDEVICEOBJECTINSTANCE

◆ LPCDIDEVICEOBJECTINSTANCE_DX3

◆ LPCDIDEVICEOBJECTINSTANCE_DX3A

◆ LPCDIDEVICEOBJECTINSTANCE_DX3W

◆ LPCDIDEVICEOBJECTINSTANCEA

◆ LPCDIDEVICEOBJECTINSTANCEW

◆ LPCDIEFFECT

typedef const DIEFFECT* LPCDIEFFECT

◆ LPCDIEFFECTINFO

typedef const DIEFFECTINFO* LPCDIEFFECTINFO

◆ LPCDIEFFECTINFOA

◆ LPCDIEFFECTINFOW

◆ LPCDIENVELOPE

typedef const DIENVELOPE* LPCDIENVELOPE

◆ LPCDIOBJECTDATAFORMAT

◆ LPCDIPERIODIC

typedef const DIPERIODIC* LPCDIPERIODIC

◆ LPCDIPROPDWORD

typedef const DIPROPDWORD* LPCDIPROPDWORD

◆ LPCDIPROPHEADER

typedef const DIPROPHEADER* LPCDIPROPHEADER

◆ LPCDIPROPRANGE

typedef const DIPROPRANGE* LPCDIPROPRANGE

◆ LPCDIRAMPFORCE

typedef const DIRAMPFORCE* LPCDIRAMPFORCE

◆ LPDICONDITION

typedef struct DICONDITION * LPDICONDITION

◆ LPDICONSTANTFORCE

◆ LPDICUSTOMFORCE

typedef struct DICUSTOMFORCE * LPDICUSTOMFORCE

◆ LPDIDATAFORMAT

typedef struct _DIDATAFORMAT * LPDIDATAFORMAT

◆ LPDIDEVCAPS

typedef struct DIDEVCAPS * LPDIDEVCAPS

◆ LPDIDEVCAPS_DX3

typedef struct DIDEVCAPS_DX3 * LPDIDEVCAPS_DX3

◆ LPDIDEVICEINSTANCE

◆ LPDIDEVICEINSTANCE_DX3

◆ LPDIDEVICEINSTANCE_DX3A

◆ LPDIDEVICEINSTANCE_DX3W

◆ LPDIDEVICEINSTANCEA

◆ LPDIDEVICEINSTANCEW

◆ LPDIDEVICEOBJECTDATA

◆ LPDIDEVICEOBJECTINSTANCE

◆ LPDIDEVICEOBJECTINSTANCE_DX3

◆ LPDIDEVICEOBJECTINSTANCE_DX3A

◆ LPDIDEVICEOBJECTINSTANCE_DX3W

◆ LPDIDEVICEOBJECTINSTANCEA

◆ LPDIDEVICEOBJECTINSTANCEW

◆ LPDIEFFECT

typedef struct DIEFFECT * LPDIEFFECT

◆ LPDIEFFECTINFO

◆ LPDIEFFECTINFOA

typedef struct DIEFFECTINFOA * LPDIEFFECTINFOA

◆ LPDIEFFECTINFOW

typedef struct DIEFFECTINFOW * LPDIEFFECTINFOW

◆ LPDIEFFESCAPE

typedef struct DIEFFESCAPE * LPDIEFFESCAPE

◆ LPDIENVELOPE

typedef struct DIENVELOPE * LPDIENVELOPE

◆ LPDIJOYSTATE

typedef struct DIJOYSTATE * LPDIJOYSTATE

◆ LPDIJOYSTATE2

typedef struct DIJOYSTATE2 * LPDIJOYSTATE2

◆ LPDIMOUSESTATE

typedef struct _DIMOUSESTATE * LPDIMOUSESTATE

◆ LPDIOBJECTDATAFORMAT

◆ LPDIPERIODIC

typedef struct DIPERIODIC * LPDIPERIODIC

◆ LPDIPROPDWORD

typedef struct DIPROPDWORD * LPDIPROPDWORD

◆ LPDIPROPHEADER

typedef struct DIPROPHEADER * LPDIPROPHEADER

◆ LPDIPROPRANGE

typedef struct DIPROPRANGE * LPDIPROPRANGE

◆ LPDIRAMPFORCE

typedef struct DIRAMPFORCE * LPDIRAMPFORCE

◆ LPDIRECTINPUT

typedef struct IDirectInput* LPDIRECTINPUT

◆ LPDIRECTINPUT2

typedef struct IDirectInput2* LPDIRECTINPUT2

◆ LPDIRECTINPUT2A

typedef struct IDirectInput2A* LPDIRECTINPUT2A

◆ LPDIRECTINPUT2W

typedef struct IDirectInput2W* LPDIRECTINPUT2W

◆ LPDIRECTINPUTA

typedef struct IDirectInputA* LPDIRECTINPUTA

◆ LPDIRECTINPUTDEVICE

◆ LPDIRECTINPUTDEVICE2

◆ LPDIRECTINPUTDEVICE2A

typedef struct IDirectInputDevice2A* LPDIRECTINPUTDEVICE2A

◆ LPDIRECTINPUTDEVICE2W

typedef struct IDirectInputDevice2W* LPDIRECTINPUTDEVICE2W

◆ LPDIRECTINPUTDEVICEA

typedef struct IDirectInputDeviceA* LPDIRECTINPUTDEVICEA

◆ LPDIRECTINPUTDEVICEW

typedef struct IDirectInputDeviceW* LPDIRECTINPUTDEVICEW

◆ LPDIRECTINPUTEFFECT

typedef struct IDirectInputEffect* LPDIRECTINPUTEFFECT

◆ LPDIRECTINPUTW

typedef struct IDirectInputW* LPDIRECTINPUTW

Function Documentation

◆ BOOL()

typedef BOOL ( FAR PASCAL *  LPDPLENUMLOCALAPPLICATIONSCALLBACK)

Callback for IDirectPlay2::EnumPlayers IDirectPlay2::EnumGroups IDirectPlay2::EnumGroupPlayers

Unicode callback for DirectPlayEnumerate This callback prototype will be used if compiling for Unicode strings

ANSI callback for DirectPlayEnumerate This callback prototype will be used if compiling for ANSI strings

Callback for IDirectPlay3(A)::EnumConnections

Callback for EnumAddressTypes()

Callback for EnumLocalApplications()

Referenced by DECLARE_INTERFACE_().

◆ DECLARE_INTERFACE_() [1/9]

DECLARE_INTERFACE_ ( IDirectInput2A  ,
IDirectInputA   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [2/9]

DECLARE_INTERFACE_ ( IDirectInput2W  ,
IDirectInputW   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [3/9]

DECLARE_INTERFACE_ ( IDirectInputA  ,
IUnknown   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [4/9]

DECLARE_INTERFACE_ ( IDirectInputDevice2A  ,
IDirectInputDeviceA   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [5/9]

DECLARE_INTERFACE_ ( IDirectInputDevice2W  ,
IDirectInputDeviceW   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [6/9]

DECLARE_INTERFACE_ ( IDirectInputDeviceA  ,
IUnknown   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [7/9]

DECLARE_INTERFACE_ ( IDirectInputDeviceW  ,
IUnknown   
)

References DWORD(), and LPVOID.

◆ DECLARE_INTERFACE_() [8/9]

DECLARE_INTERFACE_ ( IDirectInputEffect  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [9/9]

DECLARE_INTERFACE_ ( IDirectInputW  ,
IUnknown   
)

References DWORD(), and LPVOID.

◆ DEFINE_GUID() [1/37]

DEFINE_GUID ( CLSID_DirectInput  ,
0x25E609E0  ,
0xB259  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [2/37]

DEFINE_GUID ( CLSID_DirectInputDevice  ,
0x25E609E1  ,
0xB259  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [3/37]

DEFINE_GUID ( GUID_Button  ,
0xA36D02F0  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [4/37]

DEFINE_GUID ( GUID_ConstantForce  ,
0x13541C20  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [5/37]

DEFINE_GUID ( GUID_CustomForce  ,
0x13541C2B  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [6/37]

DEFINE_GUID ( GUID_Damper  ,
0x13541C28  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [7/37]

DEFINE_GUID ( GUID_Friction  ,
0x13541C2A  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [8/37]

DEFINE_GUID ( GUID_Inertia  ,
0x13541C29  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [9/37]

DEFINE_GUID ( GUID_Joystick  ,
0x6F1D2B70  ,
0xD5A0  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [10/37]

DEFINE_GUID ( GUID_Key  ,
0x55728220  ,
0xD33C  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [11/37]

DEFINE_GUID ( GUID_POV  ,
0xA36D02F2  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [12/37]

DEFINE_GUID ( GUID_RampForce  ,
0x13541C21  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [13/37]

DEFINE_GUID ( GUID_RxAxis  ,
0xA36D02F4  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [14/37]

DEFINE_GUID ( GUID_RyAxis  ,
0xA36D02F5  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [15/37]

DEFINE_GUID ( GUID_RzAxis  ,
0xA36D02E3  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [16/37]

DEFINE_GUID ( GUID_SawtoothDown  ,
0x13541C26  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [17/37]

DEFINE_GUID ( GUID_SawtoothUp  ,
0x13541C25  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [18/37]

DEFINE_GUID ( GUID_Sine  ,
0x13541C23  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [19/37]

DEFINE_GUID ( GUID_Slider  ,
0xA36D02E4  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [20/37]

DEFINE_GUID ( GUID_Spring  ,
0x13541C27  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [21/37]

DEFINE_GUID ( GUID_Square  ,
0x13541C22  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [22/37]

DEFINE_GUID ( GUID_SysKeyboard  ,
0x6F1D2B61  ,
0xD5A0  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [23/37]

DEFINE_GUID ( GUID_SysMouse  ,
0x6F1D2B60  ,
0xD5A0  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [24/37]

DEFINE_GUID ( GUID_Triangle  ,
0x13541C24  ,
0x8E33  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [25/37]

DEFINE_GUID ( GUID_Unknown  ,
0xA36D02F3  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [26/37]

DEFINE_GUID ( GUID_XAxis  ,
0xA36D02E0  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [27/37]

DEFINE_GUID ( GUID_YAxis  ,
0xA36D02E1  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [28/37]

DEFINE_GUID ( GUID_ZAxis  ,
0xA36D02E2  ,
0xC9F3  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [29/37]

DEFINE_GUID ( IID_IDirectInput2A  ,
0x5944E662  ,
0xAA8A  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [30/37]

DEFINE_GUID ( IID_IDirectInput2W  ,
0x5944E663  ,
0xAA8A  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [31/37]

DEFINE_GUID ( IID_IDirectInputA  ,
0x89521360  ,
0xAA8A  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [32/37]

DEFINE_GUID ( IID_IDirectInputDevice2A  ,
0x5944E682  ,
0xC92E  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [33/37]

DEFINE_GUID ( IID_IDirectInputDevice2W  ,
0x5944E683  ,
0xC92E  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [34/37]

DEFINE_GUID ( IID_IDirectInputDeviceA  ,
0x5944E680  ,
0xC92E  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [35/37]

DEFINE_GUID ( IID_IDirectInputDeviceW  ,
0x5944E681  ,
0xC92E  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DEFINE_GUID() [36/37]

DEFINE_GUID ( IID_IDirectInputEffect  ,
0xE7E1F7C0  ,
0x88D2  ,
0x11D0  ,
0x9A  ,
0xD0  ,
0x00  ,
0xA0  ,
0xC9  ,
0xA0  ,
0x6E  ,
0x35   
)

◆ DEFINE_GUID() [37/37]

DEFINE_GUID ( IID_IDirectInputW  ,
0x89521361  ,
0xAA8A  ,
0x11CF  ,
0xBF  ,
0xC7  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x00  ,
0x00   
)

◆ DirectInputCreateA()

HRESULT WINAPI DirectInputCreateA ( HINSTANCE  hinst,
DWORD  dwVersion,
LPDIRECTINPUTA ppDI,
LPUNKNOWN  punkOuter 
)

◆ DirectInputCreateW()

HRESULT WINAPI DirectInputCreateW ( HINSTANCE  hinst,
DWORD  dwVersion,
LPDIRECTINPUTW ppDI,
LPUNKNOWN  punkOuter 
)

Variable Documentation

◆ c_dfDIJoystick

const DIDATAFORMAT c_dfDIJoystick
extern

◆ c_dfDIJoystick2

const DIDATAFORMAT c_dfDIJoystick2
extern

◆ c_dfDIKeyboard

const DIDATAFORMAT c_dfDIKeyboard
extern

◆ c_dfDIMouse

const DIDATAFORMAT c_dfDIMouse
extern

◆ LPVOID

typedef LPVOID

Referenced by DECLARE_INTERFACE_().