IDirectInput

Applications use the methods of the IDirectInput interface to enumerate, create, and retrieve the status of DirectInput devices, initialize the DirectInput object, and invoke an instance of the Windows Control Panel.

The IDirectInput interface is obtained by using the DirectInputCreate function.

The methods of the IDirectInput interface can be organized into the following groups.

Device Management CreateDevice
EnumDevices
GetDeviceStatus
Miscellaneous Initialize
RunControlPanel

The IDirectInput interface, like all COM interfaces, inherits the IUnknown interface methods. The IUnknown interface supports the following three methods:

AddRef
QueryInterface
Release

The LPDIRECTINPUT type is defined as a pointer to the IDirectInput interface:

typedef struct IDirectInput    *LPDIRECTINPUT;