Open FFBoard
Open source force feedback firmware
USBdevice.h
Go to the documentation of this file.
1/*
2 * USBdevice.h
3 *
4 * Created on: 19.02.2021
5 * Author: Yannick
6 */
7
8#ifndef USB_SRC_USBDEVICE_H_
9#define USB_SRC_USBDEVICE_H_
10
11#include "cppmain.h"
12#include "tusb.h"
13#include "thread.hpp"
14#include "usb_descriptors.h"
15
16#define USB_STRING_DESC_BUF_SIZE 32
17
18
19
27public:
28 USBdevice(const tusb_desc_device_t* deviceDesc,const uint8_t (*confDesc),const usb_string_desc_t* strings,uint8_t appendSerial = 4);
29 virtual ~USBdevice();
30 void Run(); // Thread loop
31 void virtual registerUsb();
32
33 virtual const uint8_t* getUsbDeviceDesc();
34 virtual const uint8_t* getUsbConfigurationDesc(uint8_t index);
35 virtual uint16_t* getUsbStringDesc(uint8_t index, uint16_t langid);
36 virtual std::string getUsbSerial();
37
38protected:
40 const uint8_t* desc_conf; // Device configuration descriptor
42 uint8_t appendSerial;
43};
44
45#endif /* USB_SRC_USBDEVICE_H_ */
const uint8_t * desc_conf
Definition: USBdevice.h:40
virtual void registerUsb()
Definition: USBdevice.cpp:25
uint8_t appendSerial
Definition: USBdevice.h:42
virtual const uint8_t * getUsbDeviceDesc()
Definition: USBdevice.cpp:49
virtual const uint8_t * getUsbConfigurationDesc(uint8_t index)
Definition: USBdevice.cpp:53
virtual std::string getUsbSerial()
Definition: USBdevice.cpp:43
virtual ~USBdevice()
Definition: USBdevice.cpp:18
const usb_string_desc_t * string_desc
Definition: USBdevice.h:41
void Run()
Definition: USBdevice.cpp:33
const tusb_desc_device_t * desc_device
Definition: USBdevice.h:39
USBdevice(const tusb_desc_device_t *deviceDesc, const uint8_t(*confDesc), const usb_string_desc_t *strings, uint8_t appendSerial=4)
Definition: USBdevice.cpp:13
virtual uint16_t * getUsbStringDesc(uint8_t index, uint16_t langid)
Definition: USBdevice.cpp:60
TU_ATTR_PACKED_BEGIN TU_ATTR_BIT_FIELD_ORDER_BEGIN struct TU_ATTR_PACKED tusb_desc_device_t
USB Device Descriptor.