HIDGamepad::HIDGamepad(IOHIDDeviceRef hidDevice) : m_hidDevice(hidDevice) { m_connectTime = m_lastUpdateTime = monotonicallyIncreasingTime(); CFNumberRef cfVendorID = (CFNumberRef)IOHIDDeviceGetProperty(hidDevice, CFSTR(kIOHIDVendorIDKey)); CFNumberRef cfProductID = (CFNumberRef)IOHIDDeviceGetProperty(hidDevice, CFSTR(kIOHIDProductIDKey)); int vendorID, productID; CFNumberGetValue(cfVendorID, kCFNumberIntType, &vendorID); CFNumberGetValue(cfProductID, kCFNumberIntType, &productID); CFStringRef cfProductName = (CFStringRef)IOHIDDeviceGetProperty(hidDevice, CFSTR(kIOHIDProductKey)); String productName(cfProductName); // Currently the spec has no formatting for the id string. // This string formatting matches Firefox. m_id = String::format("%x-%x-%s", vendorID, productID, productName.utf8().data()); initElements(); }
std::string ContentClientQt::GetProduct() const { QString productName(qApp->applicationName() % '/' % qApp->applicationVersion()); return productName.toStdString(); }