// hidsdi.h
BOOLEAN HidD_GetPhysicalDescriptor(
[in] HANDLE HidDeviceObject,
[out] PVOID Buffer,
[in] ULONG BufferLength
);
View the official Windows Driver Kit DDI referenceNo description available.
The HidD_GetPhysicalDescriptor routine returns the _Physical Descriptor_ of a top-level collection that identifies the collection's physical device.
_Physical Descriptor_ is used to indicate what physical part of the human body is used to activate the controls on a device. For example, a _Physical Descriptor_ might indicate that the right hand thumb is used to activate button 5.
Note that _Physical Descriptors_ are entirely optional. They add complexity and offer very little in return for most devices. However, some devices, particularly those with a large number of identical controls (for example, buttons) will find that _Physical Descriptors_ help different applications assign functionality to these controls in a more consistent manner. See HID specification for more info.
HidDeviceObject [in]Specifies an open handle to a top-level collection.
Buffer [out]Pointer to a caller-allocated buffer that the routine uses to return the requested physical descriptor.
BufferLength [in]Specifies the length, in bytes, of the buffer at Buffer.
HidD_GetPhysicalDescriptor returns TRUE if it succeeds; otherwise, it returns FALSE. Use GetLastError to get extended error information.
Only user-mode applications can call HidD_GetPhysicalDescriptor. Kernel-mode drivers can use an IOCTL_GET_PHYSICAL_DESCRIPTOR request.
For more information, see HID Collections.