RawGameController.HardwareProductId Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
The hardware product ID of the raw game controller.
public:
property unsigned short HardwareProductId { unsigned short get(); };
uint16_t HardwareProductId();
public ushort HardwareProductId { get; }
var uInt16 = rawGameController.hardwareProductId;
Public ReadOnly Property HardwareProductId As UShort
Property Value
The hardware product ID of the raw game controller.
Examples
The following example checks if the given raw game controller's PID and VID (Product ID and Vendor ID, respectively) match the given PID and VID.
#include <winrt/Windows.Gaming.Input.h>
using namespace winrt;
using namespace Windows::Gaming::Input;
...
void CheckIfMatch(RawGameController rawGameController, uint16_t pid, uint16_t vid)
{
if ((rawGameController.HardwareProductId() == pid) &&
(rawGameController.HardwareVendorId() == vid))
{
/* This controller is the type that we're checking for, so we can assign a
specific input mapping. */
}
}
Remarks
If you have a specific controller that you want to support, you can get this value and RawGameController.HardwareVendorId and check that they match the controller. The position of each input in each array that you get from RawGameController.GetCurrentReading is the same for every controller with the same HardwareProductId and HardwareVendorId, so you don't have to worry about your logic potentially being inconsistent among different controllers of the same type.