1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef DEVICE_HID_HID_DEVICE_INFO_H_
6 #define DEVICE_HID_HID_DEVICE_INFO_H_
11 #include "build/build_config.h"
12 #include "device/hid/hid_collection_info.h"
14 #if defined(OS_MACOSX)
15 #include <IOKit/hid/IOHIDDevice.h>
22 kHIDBusTypeBluetooth = 1,
25 #if defined(OS_MACOSX)
26 typedef IOHIDDeviceRef HidDeviceId;
27 const HidDeviceId kInvalidHidDeviceId = NULL;
29 typedef std::string HidDeviceId;
30 extern const char kInvalidHidDeviceId[];
33 struct HidDeviceInfo {
37 // Device identification.
38 HidDeviceId device_id;
41 std::string product_name;
42 std::string serial_number;
45 // Top-Level Collections information.
46 std::vector<HidCollectionInfo> collections;
48 uint16_t max_input_report_size;
49 uint16_t max_output_report_size;
50 uint16_t max_feature_report_size;
55 #endif // DEVICE_HID_HID_DEVICE_INFO_H_