DIDEVCAPS
Describes a Microsoft® DirectInput® device's capabilities. This structure is used with the IDirectInputDevice8::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 IDirectInputDevice8::GetCapabilities method.
- dwFlags
- Flags associated with the device. This value can be a combination of the following:
- DIDC_ALIAS
- The device is a duplicate of another DirectInput device. Alias devices are by default not enumerated by IDirectInput8::EnumDevices.
- DIDC_ATTACHED
- The device is physically .
- DIDC_DEADBAND
- The device supports deadband for at least one force-feedback condition.
- DIDC_EMULATED
- If this flag is set, the data is coming from a user mode device interface, such as a Human Interface Device (HID), or by some other ring 3 means. If it is not set, the data is coming directly from a kernel mode driver.
- DIDC_FORCEFEEDBACK
- The device supports force feedback.
- DIDC_FFFADE
- The force-feedback system supports the parameter for at least one effect. If the device does not support fade, the fade level and fade time members of the DIENVELOPE structure are ignored by the device.
After a call to the IDirectInputDevice8::GetEffectInfo method, an individual effect sets the DIEFT_FFFADE flag if fade is supported for that effect.
- DIDC_FFATTACK
- The force-feedback system supports the parameter for at least one effect. If the device does not support attack, the attack level and attack time members of the DIENVELOPE structure are ignored by the device.
After a call to the IDirectInputDevice8::GetEffectInfo method, an individual effect sets the DIEFT_FFATTACK flag if attack is supported for that effect.
- DIDC_HIDDEN
- Fictitious device created by a device driver so that it can generate keyboard and mouse events. Such devices are not normally enumerated by IDirectInput8::EnumDevices or configured by IDirectInput8::ConfigureDevices.
- DIDC_PHANTOM
- Placeholder for a device that might exist later. Phantom devices are by default not enumerated by IDirectInput8::EnumDevices.
- 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 IDirectInputDevice8::Poll method 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 IDirectInputDevice8::Poll method to obtain data. HID devices can contain a mixture of polled and nonpolled 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, the negative coefficient in the DICONDITION structure is ignored.
After a call to the IDirectInputDevice8::GetEffectInfo method, an individual condition sets the DIEFT_POSNEGCOEFFICIENTS flag if separate positive and negative coefficients are supported for that condition.
- DIDC_POSNEGSATURATION
- The force-feedback system supports a maximum for both positive and negative force output for at least one condition. If the device does not support both saturation values, the negative saturation in the DICONDITION structure is ignored.
After a call to the IDirectInputDevice8::GetEffectInfo method, an individual condition sets the DIEFT_POSNEGSATURATION flag if separate positive and negative saturation are supported for that condition.
- DIDC_SATURATION
- The force-feedback system supports the of condition effects for at least one condition. If the device does not support saturation, the force generated by a condition is limited only by the maximum force that the device can generate.
After a call to the IDirectInputDevice8::GetEffectInfo method, an individual condition sets the DIEFT_SATURATION flag if saturation is supported for that condition.
- DIDC_STARTDELAY
- The force-feedback system supports the start delay parameter for at least one effect. If the device does not support start delays, the dwStartDelay member of the DIEFFECT structure is ignored.
- 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
- Minimum time between playback of consecutive raw force commands, in microseconds.
- dwFFMinTimeResolution
- Minimum 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, the device would round any times to the nearest millisecond.
- dwFirmwareRevision
- Firmware revision of the device.
- dwHardwareRevision
- Hardware revision of the device.
- dwFFDriverVersion
- 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 have larger numbers.
Requirements
Windows NT/2000/XP: Requires Windows 2000.
Windows 98/Me: Requires Windows 98 or later. Available as a redistributable for Windows 98.
Header: Declared in Dinput.h.
See Also
DIDEVICEINSTANCE