]> git.donarmstrong.com Git - tmk_firmware.git/blob - protocol/mbed/HIDKeyboard.h
Merge branch 'merge_rn42'
[tmk_firmware.git] / protocol / mbed / HIDKeyboard.h
1 #ifndef HIDKEYBOARD_H
2
3 #include "stdint.h"
4 #include "stdbool.h"
5 #include "USBHID.h"
6 #include "report.h"
7
8
9 class HIDKeyboard : public USBDevice {
10 public:
11     HIDKeyboard(uint16_t vendor_id = 0xFEED, uint16_t product_id = 0xabed, uint16_t product_release = 0x0001);
12
13     bool sendReport(report_keyboard_t report);
14     uint8_t leds(void);
15 protected:
16     uint16_t reportLength;
17     virtual bool USBCallback_setConfiguration(uint8_t configuration);
18     virtual uint8_t * stringImanufacturerDesc();
19     virtual uint8_t * stringIproductDesc();
20     virtual uint8_t * stringIserialDesc();
21     virtual uint16_t reportDescLength();
22     virtual uint8_t * reportDesc();
23     virtual uint8_t * configurationDesc();
24     //virtual uint8_t * deviceDesc();
25     virtual bool USBCallback_request();
26     virtual void USBCallback_requestCompleted(uint8_t * buf, uint32_t length);
27 private:
28     uint8_t led_state;
29 };
30
31 #endif