1/*
2 * Copyright 2004-2010, Haiku Inc. All Rights Reserved.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef _USB_HID_PAGE_PHYSICAL_INTERFACE_DEVICE_H
6#define _USB_HID_PAGE_PHYSICAL_INTERFACE_DEVICE_H
7
8
9/* Reference:
10 *		HID Usage Page 0x0F: PHYSICAL INTERFACE DEVICE
11 *		Device Class Definition for Physical Interface Deviced (PID) Ver. 1.0
12 *		http://www.usb.org/developers/devclass_docs/pid1_01.pdf
13 */
14
15// UsageIDs
16enum {
17	B_HID_UID_PID_PHYSICAL_INTERFACE_DEVICE = 0x01,
18
19	B_HID_UID_PID_NORMAL = 0x20,
20	B_HID_UID_PID_SET_EFFECT_REPORT,
21	B_HID_UID_PID_EFFECT_BLOCK_INDEX,
22	B_HID_UID_PID_PARAMETER_BLOCK_OFFSET,
23	B_HID_UID_PID_ROM_FLAG,
24	B_HID_UID_PID_EFFECT_TYPE,
25	B_HID_UID_PID_ET_CONSTANT_FORCE_DATA,
26
27	B_HID_UID_PID_ET_SQUARE = 0x30,
28	B_HID_UID_PID_ET_SINE,
29	B_HID_UID_PID_ET_TRIANGLE,
30	B_HID_UID_PID_ET_SAWTOOTH_UP,
31	B_HID_UID_PID_ET_SAWTOOTH_DOWN,
32
33	B_HID_UID_PID_ET_SPRING,
34	B_HID_UID_PID_ET_DAMPER,
35	B_HID_UID_PID_ET_INERTIA,
36	B_HID_UID_PID_ET_FRICTION,
37
38	B_HID_UID_PID_DURATION = 0x50,
39	B_HID_UID_PID_SAMPLE_PERIOD,
40	B_HID_UID_PID_GAIN,
41	B_HID_UID_PID_TRIGGER_BUTTON,
42	B_HID_UID_PID_TRIGGER_REPEAT_INTERVAL,
43	B_HID_UID_PID_AXES_ENABLE,
44	B_HID_UID_PID_DIRECTION_ENABLE,
45	B_HID_UID_PID_DIRECTION,
46	B_HID_UID_PID_TYPE_SPECIFIC_BLOCK_OFFSET,
47	B_HID_UID_PID_BLOCK_TYPE,
48	B_HID_UID_PID_SET_ENVELOPE_REPORT,
49	B_HID_UID_PID_ATTACK_LEVEL,
50	B_HID_UID_PID_ATTACK_TIME,
51	B_HID_UID_PID_FADE_LEVEL,
52	B_HID_UID_PID_FADE_TIME,
53	B_HID_UID_PID_SET_CONDITION_REPORT,
54	B_HID_UID_PID_CP_OFFSET,
55	B_HID_UID_PID_POSITIVE_COEFFICIENT,
56	B_HID_UID_PID_NEGATIVE_COEFFICIENT,
57	B_HID_UID_PID_POSITIVE_SATURATION,
58	B_HID_UID_PID_NEGATIVE_SATURATION,
59	B_HID_UID_PID_DEAD_BAND,
60	B_HID_UID_PID_DOWNLOAD_FORCE_SAMPLE,
61	B_HID_UID_PID_ISOCH_CUSTOM_FORCE_ENABLE,
62	B_HID_UID_PID_CUSTOM_FORCE_DATA_REPORT,
63	B_HID_UID_PID_CUSTOM_FORCE_DATA,
64	B_HID_UID_PID_CUSTOM_FORCE_VENDOR_DEFINED_DATA,
65	B_HID_UID_PID_SET_CUSTOM_FORCE_REPORT,
66	B_HID_UID_PID_CUSTOM_FORCE_DATA_OFFSET,
67	B_HID_UID_PID_SAMPLE_COUNT,
68	B_HID_UID_PID_SET_PERIODIC_REPORT,
69	B_HID_UID_PID_OFFSET,
70	B_HID_UID_PID_MAGNITUDE,
71	B_HID_UID_PID_PHASE,
72	B_HID_UID_PID_PERIOD,
73	B_HID_UID_PID_SET_CONSTANT_FORCE_REPORT,
74	B_HID_UID_PID_SET_RAMP_FORCE_REPORT,
75	B_HID_UID_PID_RAMP_START,
76	B_HID_UID_PID_RAMP_END,
77	B_HID_UID_PID_EFFECT_OPERATION_REPORT,
78	B_HID_UID_PID_EFFECT_OPERATION,
79	B_HID_UID_PID_OP_EFFECT_START,
80	B_HID_UID_PID_OP_EFFECT_START_SOLO,
81	B_HID_UID_PID_OP_EFFECT_STOP,
82	B_HID_UID_PID_LOOP_COUNT,
83	B_HID_UID_PID_DEVICE_GAIN_REPORT,
84	B_HID_UID_PID_DEVICE_GAIN,
85	B_HID_UID_PID_PID_POOL_REPORT,
86	B_HID_UID_PID_RAM_POOL_SIZE,
87	B_HID_UID_PID_ROM_POOL_SIZE,
88	B_HID_UID_PID_ROM_EFFECT_BLOCK_COUNT,
89	B_HID_UID_PID_SIMULTANEOUS_EFFECTS_MAX,
90	B_HID_UID_PID_POOL_ALIGNMENT,
91	B_HID_UID_PID_PID_POOL_MOVE_REPORT,
92	B_HID_UID_PID_MOVE_SOURCE,
93	B_HID_UID_PID_MOVE_DESTINATION,
94	B_HID_UID_PID_MOVE_LENGTH,
95	B_HID_UID_PID_PID_BLOCK_LOAD_REPORT,
96
97	B_HID_UID_PID_BLOCK_LOAD_STATUS = 0x8b,
98	B_HID_UID_PID_BLOCK_LOAD_SUCCESS,
99	B_HID_UID_PID_BLOCK_LOAD_FULL,
100	B_HID_UID_PID_BLOCK_LOAD_ERROR,
101	B_HID_UID_PID_BLOCK_HANDLE,
102	B_HID_UID_PID_PID_BLOCK_FREE_REPORT,
103	B_HID_UID_PID_TYPE_SPECIFIC_BLOCK_HANDLE,
104	B_HID_UID_PID_PID_STATE_REPORT,
105
106	B_HID_UID_PID_PID_DEVICE_CONTROL_REPORT = 0x95,
107	B_HID_UID_PID_PID_DEVICE_CONTROL,
108	B_HID_UID_PID_DC_ENABLE_ACTUATORS,
109	B_HID_UID_PID_DC_DISABLE_ACTUATORS,
110	B_HID_UID_PID_DC_STOP_ALL_EFFECTS,
111	B_HID_UID_PID_DC_DEVICE_RESET,
112	B_HID_UID_PID_DC_DEVICE_PAUSE,
113	B_HID_UID_PID_DC_DEVICE_CONTINUE,
114
115	B_HID_UID_PID_DEVICE_PAUSED = 0x9f,
116	B_HID_UID_PID_ACTUATORS_ENABLED,
117
118	B_HID_UID_PID_SAFETY_SWITCH = 0xa4,
119	B_HID_UID_PID_ACTUATOR_OVERRIDE_SWITCH,
120	B_HID_UID_PID_ACTUATOR_POWER,
121	B_HID_UID_PID_START_DELAY,
122	B_HID_UID_PID_PARAMETER_BLOCK_SIZE,
123	B_HID_UID_PID_DEVICE_MANAGED_POOL,
124	B_HID_UID_PID_SHARED_PARAMETER_BLOCKS,
125	B_HID_UID_PID_CREATE_NEW_EFFECT_REPORT,
126	B_HID_UID_PID_RAM_POOL_AVAILABLE
127};
128
129
130#endif // _USB_HID_PAGE_PHYSICAL_INTERFACE_DEVICE_H
131