Igor Martinovski
/
USBJoystick
N64 to USB HID interface
USBHID/USBMouse.h@5:eb93a4f91396, 2014-12-10 (annotated)
- Committer:
- igor_m
- Date:
- Wed Dec 10 14:22:30 2014 +0000
- Revision:
- 5:eb93a4f91396
- Parent:
- 0:547c5459faa6
Initial Release
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
igor_m |
0:547c5459faa6 | 1 | #include "usbhid.h" |
igor_m |
0:547c5459faa6 | 2 | |
igor_m |
0:547c5459faa6 | 3 | #ifndef MBED_USBMOUSE_H |
igor_m |
0:547c5459faa6 | 4 | #define MBED_USBMOUSE_H |
igor_m |
0:547c5459faa6 | 5 | |
igor_m |
0:547c5459faa6 | 6 | /* Class: USBMouse |
igor_m |
0:547c5459faa6 | 7 | * Emulate a USB Mouse HID device |
igor_m |
0:547c5459faa6 | 8 | * |
igor_m |
0:547c5459faa6 | 9 | * Example: |
igor_m |
0:547c5459faa6 | 10 | * > #include "mbed.h" |
igor_m |
0:547c5459faa6 | 11 | * > #include "USBMouse.h" |
igor_m |
0:547c5459faa6 | 12 | * > |
igor_m |
0:547c5459faa6 | 13 | * > USBMouse mouse; |
igor_m |
0:547c5459faa6 | 14 | * > |
igor_m |
0:547c5459faa6 | 15 | * > int main() { |
igor_m |
0:547c5459faa6 | 16 | * > while(1) { |
igor_m |
0:547c5459faa6 | 17 | * > mouse.move(10, 0); |
igor_m |
0:547c5459faa6 | 18 | * > wait(2); |
igor_m |
0:547c5459faa6 | 19 | * > } |
igor_m |
0:547c5459faa6 | 20 | * > } |
igor_m |
0:547c5459faa6 | 21 | */ |
igor_m |
0:547c5459faa6 | 22 | class USBMouse : private usbhid { |
igor_m |
0:547c5459faa6 | 23 | public: |
igor_m |
0:547c5459faa6 | 24 | /* Constructor: USBMouse |
igor_m |
0:547c5459faa6 | 25 | * Create a USB Mouse using the mbed USB Device interface |
igor_m |
0:547c5459faa6 | 26 | */ |
igor_m |
0:547c5459faa6 | 27 | USBMouse(); |
igor_m |
0:547c5459faa6 | 28 | |
igor_m |
0:547c5459faa6 | 29 | /* Function: move |
igor_m |
0:547c5459faa6 | 30 | * Move the mouse |
igor_m |
0:547c5459faa6 | 31 | * |
igor_m |
0:547c5459faa6 | 32 | * Variables: |
igor_m |
0:547c5459faa6 | 33 | * x - Distance to move in x-axis |
igor_m |
0:547c5459faa6 | 34 | * y - Distance to move in y-axis |
igor_m |
0:547c5459faa6 | 35 | */ |
igor_m |
0:547c5459faa6 | 36 | void move(int x, int y); |
igor_m |
0:547c5459faa6 | 37 | |
igor_m |
0:547c5459faa6 | 38 | /* Function: scroll |
igor_m |
0:547c5459faa6 | 39 | * Scroll the scroll wheel |
igor_m |
0:547c5459faa6 | 40 | * |
igor_m |
0:547c5459faa6 | 41 | * Variables: |
igor_m |
0:547c5459faa6 | 42 | * z - Distance to scroll scroll wheel |
igor_m |
0:547c5459faa6 | 43 | */ |
igor_m |
0:547c5459faa6 | 44 | void scroll(int z); |
igor_m |
0:547c5459faa6 | 45 | |
igor_m |
0:547c5459faa6 | 46 | /* Function: buttons |
igor_m |
0:547c5459faa6 | 47 | * Set the state of the buttons |
igor_m |
0:547c5459faa6 | 48 | * |
igor_m |
0:547c5459faa6 | 49 | * Variables: |
igor_m |
0:547c5459faa6 | 50 | * left - set the left button as down (1) or up (0) |
igor_m |
0:547c5459faa6 | 51 | * middle - set the middle button as down (1) or up (0) |
igor_m |
0:547c5459faa6 | 52 | * right - set the right button as down (1) or up (0) |
igor_m |
0:547c5459faa6 | 53 | */ |
igor_m |
0:547c5459faa6 | 54 | void buttons(int left, int middle, int right); |
igor_m |
0:547c5459faa6 | 55 | |
igor_m |
0:547c5459faa6 | 56 | private: |
igor_m |
0:547c5459faa6 | 57 | int _buttons; |
igor_m |
0:547c5459faa6 | 58 | }; |
igor_m |
0:547c5459faa6 | 59 | |
igor_m |
0:547c5459faa6 | 60 | #endif |