Repository navigation
Expand file tree
/
Copy pathsteammessages_hiddevices.proto
More file actions
158 lines (133 loc) 路 4.31 KB
/
Copy pathsteammessages_hiddevices.proto
File metadata and controls
158 lines (133 loc) 路 4.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
option optimize_for = SPEED;
option cc_generic_services = false;
enum EHIDDeviceLocation {
k_EDeviceLocationLocal = 0;
k_EDeviceLocationRemote = 2;
k_EDeviceLocationAny = 3;
}
enum EHIDDeviceDisconnectMethod {
k_EDeviceDisconnectMethodUnknown = 0;
k_EDeviceDisconnectMethodBluetooth = 1;
k_EDeviceDisconnectMethodFeatureReport = 2;
k_EDeviceDisconnectMethodOutputReport = 3;
}
message CHIDDeviceInfo {
optional .EHIDDeviceLocation location = 1 [default = k_EDeviceLocationLocal];
optional string path = 2;
optional uint32 vendor_id = 3;
optional uint32 product_id = 4;
optional string serial_number = 5;
optional uint32 release_number = 6;
optional string manufacturer_string = 7;
optional string product_string = 8;
optional uint32 usage_page = 9;
optional uint32 usage = 10;
optional int32 interface_number = 11 [default = -1];
optional int32 ostype = 12 [default = -1];
optional bool is_generic_gamepad = 13;
optional bool is_generic_joystick = 14;
optional uint32 caps_bits = 15;
optional uint32 session_id = 16;
optional uint32 eControllerType_OBSOLETE = 17 [default = 0];
optional bool is_xinput_device_OBSOLETE = 18 [default = false];
optional uint32 session_remote_play_together_appid = 19;
optional bool is_steamvr_device = 20 [default = false];
optional uint32 caps_bits2 = 21;
}
message CHIDDeviceInputReport {
optional bytes full_report = 1;
optional bytes delta_report = 2;
optional uint32 delta_report_size = 3;
optional uint32 delta_report_crc = 4;
}
message CHIDMessageToRemote {
message DeviceOpen {
optional .CHIDDeviceInfo info = 1;
}
message DeviceClose {
optional uint32 device = 1;
}
message DeviceWrite {
optional uint32 device = 1;
optional bytes data = 2;
}
message DeviceRead {
optional uint32 device = 1;
optional uint32 length = 2;
optional int32 timeout_ms = 3;
}
message DeviceSendFeatureReport {
optional uint32 device = 1;
optional bytes data = 2;
}
message DeviceGetFeatureReport {
optional uint32 device = 1;
optional bytes report_number = 2;
optional uint32 length = 3;
}
message DeviceGetVendorString {
optional uint32 device = 1;
}
message DeviceGetProductString {
optional uint32 device = 1;
}
message DeviceGetSerialNumberString {
optional uint32 device = 1;
}
message DeviceStartInputReports {
optional uint32 device = 1;
optional uint32 length = 2;
}
message DeviceRequestFullReport {
optional uint32 device = 1;
}
message DeviceDisconnect {
optional uint32 device = 1;
optional .EHIDDeviceDisconnectMethod disconnectMethod = 2 [default = k_EDeviceDisconnectMethodUnknown];
optional bytes data = 3;
}
optional uint32 request_id = 1;
oneof command {
.CHIDMessageToRemote.DeviceOpen device_open = 2;
.CHIDMessageToRemote.DeviceClose device_close = 3;
.CHIDMessageToRemote.DeviceWrite device_write = 4;
.CHIDMessageToRemote.DeviceRead device_read = 5;
.CHIDMessageToRemote.DeviceSendFeatureReport device_send_feature_report = 6;
.CHIDMessageToRemote.DeviceGetFeatureReport device_get_feature_report = 7;
.CHIDMessageToRemote.DeviceGetVendorString device_get_vendor_string = 8;
.CHIDMessageToRemote.DeviceGetProductString device_get_product_string = 9;
.CHIDMessageToRemote.DeviceGetSerialNumberString device_get_serial_number_string = 10;
.CHIDMessageToRemote.DeviceStartInputReports device_start_input_reports = 11;
.CHIDMessageToRemote.DeviceRequestFullReport device_request_full_report = 12;
.CHIDMessageToRemote.DeviceDisconnect device_disconnect = 13;
}
}
message CHIDMessageFromRemote {
message UpdateDeviceList {
repeated .CHIDDeviceInfo devices = 1;
}
message RequestResponse {
optional uint32 request_id = 1;
optional int32 result = 2;
optional bytes data = 3;
}
message DeviceInputReports {
message DeviceInputReport {
optional uint32 device = 1;
repeated .CHIDDeviceInputReport reports = 2;
}
repeated .CHIDMessageFromRemote.DeviceInputReports.DeviceInputReport device_reports = 1;
}
message CloseDevice {
optional uint32 device = 1;
}
message CloseAllDevices {
}
oneof command {
.CHIDMessageFromRemote.UpdateDeviceList update_device_list = 1;
.CHIDMessageFromRemote.RequestResponse response = 2;
.CHIDMessageFromRemote.DeviceInputReports reports = 3;
.CHIDMessageFromRemote.CloseDevice close_device = 4;
.CHIDMessageFromRemote.CloseAllDevices close_all_devices = 5;
}
}