OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_EVENTS_DEVICES_INPUT_DEVICE_H_ | 5 #ifndef UI_EVENTS_DEVICES_INPUT_DEVICE_H_ |
6 #define UI_EVENTS_DEVICES_INPUT_DEVICE_H_ | 6 #define UI_EVENTS_DEVICES_INPUT_DEVICE_H_ |
7 | 7 |
| 8 #include <stdint.h> |
8 #include <string> | 9 #include <string> |
9 | 10 |
10 #include "ui/events/devices/events_devices_export.h" | 11 #include "ui/events/devices/events_devices_export.h" |
11 | 12 |
12 namespace ui { | 13 namespace ui { |
13 | 14 |
14 enum InputDeviceType { | 15 enum InputDeviceType { |
15 INPUT_DEVICE_INTERNAL, // Internally connected input device. | 16 INPUT_DEVICE_INTERNAL, // Internally connected input device. |
16 INPUT_DEVICE_EXTERNAL, // Known externally connected input device. | 17 INPUT_DEVICE_EXTERNAL, // Known externally connected input device. |
17 INPUT_DEVICE_UNKNOWN, // Device that may or may not be an external device. | 18 INPUT_DEVICE_UNKNOWN, // Device that may or may not be an external device. |
18 }; | 19 }; |
19 | 20 |
20 // Represents an input device state. | 21 // Represents an input device state. |
21 struct EVENTS_DEVICES_EXPORT InputDevice { | 22 struct EVENTS_DEVICES_EXPORT InputDevice { |
22 static const int kInvalidId; | 23 static const int kInvalidId; |
23 | 24 |
24 // Creates an invalid input device. | 25 // Creates an invalid input device. |
25 InputDevice(); | 26 InputDevice(); |
26 | 27 |
27 InputDevice(int id, InputDeviceType type); | 28 InputDevice(int id, InputDeviceType type, const std::string& name); |
| 29 InputDevice(int id, |
| 30 InputDeviceType type, |
| 31 const std::string& name, |
| 32 uint16_t vendor, |
| 33 uint16_t product); |
28 virtual ~InputDevice(); | 34 virtual ~InputDevice(); |
29 | 35 |
30 // ID of the device. This ID is unique between all input devices. | 36 // ID of the device. This ID is unique between all input devices. |
31 int id; | 37 int id; |
32 | 38 |
33 // The type of the input device. | 39 // The type of the input device. |
34 InputDeviceType type; | 40 InputDeviceType type; |
| 41 |
| 42 // Name of the device. |
| 43 std::string name; |
| 44 |
| 45 // USB-style device identifiers, where available, or 0 if unavailable. |
| 46 uint16_t vendor_id; |
| 47 uint16_t product_id; |
35 }; | 48 }; |
36 | 49 |
37 } // namespace ui | 50 } // namespace ui |
38 | 51 |
39 #endif // UI_EVENTS_DEVICES_INPUT_DEVICE_H_ | 52 #endif // UI_EVENTS_DEVICES_INPUT_DEVICE_H_ |
OLD | NEW |