DIDEVCAPS

The DIDEVCAPS structure contains information about a DirectInput device's capabilities. This structure is used with the IDirectInputDevice::GetCapabilities method.

typedef struct DIDEVCAPS {

DWORD dwSize;

DWORD dwFlags;

DWORD dwDevType;

DWORD dwAxes;

DWORD dwButtons;

DWORD dwPOVs;

DWORD dwFFSamplePeriod;

DWORD dwFFMinTimeResolution;

DWORD dwFirmwareRevision;

DWORD dwHardwareRevision;

DWORD dwFFDriverVersion;

} DIDEVCAPS, *LPDIDEVCAPS;

Members

dwSize

Size of this structure, in bytes. This member must be initialized by the application before a call to the IDirectInputDevice::GetCapabilities method.

dwFlags

Flags associated with the device. This value can be a combination of the following:

DIDC_ATTACHED

The device is physically attached.

DIDC_DEADBAND

The device supports deadband for at least one force feedback condition.

DIDC_EMULATED

Device functionality is emulated.

DIDC_FORCEFEEDBACK

The device supports force feedback.

DIDC_FFFADE

The force feedback system supports the fade parameter for at least one effect. If the device does not support fade then the fade level and fade time parameters of the DIENVELOPE structure will be ignored by the device.

After a call to the IDirectInputDevice2::GetEffectInfo method, an individual effect will set the DIEFT_FFFADE flag if fade is supported for that effect.

DIDC_FFATTACK

The force feedback system supports the attack envelope parameter for at least one effect. If the device does not support attack then the attack level and attack time parameters of the DIENVELOPE structure will be ignored by the device.

After a call to the IDirectInputDevice2::GetEffectInfo method, an individual effect will set the DIEFT_FFATTACK flag if attack is supported for that effect.

DIDC_POLLEDDATAFORMAT

At least one object in the current data format is polled rather than interrupt-driven. For these objects, the application must explicitly call the IDirectInputDevice2::Poll method in order to obtain data.

DIDC_POLLEDDEVICE

At least one object on the device is polled rather than interrupt-driven. For these objects, the application must explicitly call the IDirectInputDevice2::Poll method in order to obtain data. HID devices may contain a mixture of polled and non-polled objects.

DIDC_POSNEGCOEFFICIENTS

The force feedback system supports two coefficient values for conditions (one for the positive displacement of the axis and one for the negative displacement of the axis) for at least one condition. If the device does not support both coefficients, then the negative coefficient in the DICONDITION structure will be ignored.

After a call to the IDirectInputDevice2::GetEffectInfo method, an individual condition will set the DIEFT_POSNEGCOEFFICIENTS flag if separate positive and negative coefficients are are supported for that condition.

DIDC_POSNEGSATURATION

The force feedback system supports a maximum saturation for both positive and negative force output for at least one condition. If the device does not support both saturation values, then the negative saturation in the DICONDITION structure will be ignored.

After a call to the IDirectInputDevice2::GetEffectInfo method, an individual condition will set the DIEFT_POSNEGSATURATION flag if separate positive and negative saturations are are supported for that condition.

DIDC_SATURATION

The force feedback system supports the saturation of condition effects for at least one condition. If the device does not support saturation, then the force generated by a condition is limited only by the maximum force which the device can generate.

After a call to the IDirectInputDevice2::GetEffectInfo method, an individual condition will set the DIEFT_SATURATION flag if saturation is supported for that condition.

dwDevType

Device type specifier. This member can contain values identical to those in the dwDevType member of the DIDEVICEINSTANCE structure.

dwAxes

Number of axes available on the device.

dwButtons

Number of buttons available on the device.

dwPOVs

Number of point-of-view controllers available on the device.

dwFFSamplePeriod

The minimum time between playback of consecutive raw force commands.

dwFFMinTimeResolution

The minimum amount of time, in microseconds, that the device can resolve. The device rounds any times to the nearest supported increment. For example, if the value of dwFFMinTimeResolution is 1000, then the device would round any times to the nearest millisecond.

dwFirmwareRevision

Specifies the firmware revision of the device.

dwHardwareRevision

The hardware revision of the device.

dwFFDriverVersion

The version number of the device driver.

Remarks

The semantics of version numbers are left to the manufacturer of the device. The only guarantee is that newer versions will have larger numbers.

QuickInfo

  Windows NT: Use version 5.0 or later.
  Windows: Use Windows 95 OSR2 or later. Available as a redistributable for Windows 95.
  Windows CE: Unsupported.
  Header: Declared in dinput.h.

See Also

DIDEVICEINSTANCE