Commit Graph

20 Commits

Author SHA1 Message Date
NicoHood 9cd24d7a0d Removed not needed public statement for root node 2015-10-03 07:56:48 +02:00
Martino Facchin 8cab209ef9 [PUSB] Fix static initialization order fiasco
For details see:
https://isocpp.org/wiki/faq/ctors#static-init-order-on-first-use
2015-10-02 11:59:24 +02:00
Cristian Maglie e42d7d6221 [PUSB] Fixed check for available endpoints
The check for available slot in PluggableUSB is done on the endpoint
and not on the number of plugged modules.

The modulesCount field is no longer useful and it has been removed.
2015-10-02 11:59:23 +02:00
Cristian Maglie c0f9296ae5 [PUSB] No more static fields in PluggableUSB class 2015-10-02 11:59:23 +02:00
Cristian Maglie 27c1832aca [PUSB] The latest fields are now set via constructor 2015-10-02 11:59:23 +02:00
Cristian Maglie 9065229595 [PUSB] callbacks are now pure virtual methods
This change allows the compiler to handle callbacks resolution.

Callbacks now must be implemented on the class that extends
PUSBListNode and this is forced by compiler by means of pure
virtual methods.

Also the calls to HID.interface() and HID.endpoint() can now
be simplified to interface() and endpoint() respectively since
the methods are no more static.
2015-10-02 11:59:23 +02:00
Cristian Maglie 7fee0f0a75 [PUSB] replaced u8 with uint8_t 2015-10-02 11:59:22 +02:00
Cristian Maglie 34a75d9416 [PUSB] Selected interface and endpoint are now part of PUSBListNode
The method

   int8_t PluggableUSB::addFunction(PUSBListNode *, uint8_t *)

has been changed to

   bool PluggableUSB::plug(PUSBListNode *node)

since both EP and Interfaces are now saved directly into node
2015-10-02 11:59:22 +02:00
Cristian Maglie c07f988609 [PUSB] Global functions PUSB_* are now methods of PluggableUSB class 2015-10-02 11:59:22 +02:00
Cristian Maglie 7302965552 [PUSB] PUSBCallback struct has been merged into PUSBListNode
This slightly simplifies PluggableUSB API.
2015-10-02 11:59:22 +02:00
Nico d2a52bc2ac Removed not used PUSB_Begin() 2015-09-29 17:02:07 +02:00
Cristian Maglie 1bfae1d7d5 [HID] Removed unused PUSBReturn structure 2015-09-28 17:05:35 +02:00
Martino Facchin b0bdb47694 fix pluggableUSB linked list 2015-07-16 13:13:52 +02:00
Martino Facchin 3cf30dff25 rename Setup typedef struct to USBSetup
was really too common
2015-07-16 13:13:52 +02:00
Martino Facchin 30ebf7f924 fix HID descriptors bigger than 127 bytes 2015-07-16 13:13:51 +02:00
Martino Facchin d269ed2854 rework PUSBCallbacks initialization 2015-07-16 13:13:39 +02:00
Martino Facchin 8fbc30bd8a add numInterfaces field to PUSBCallbacks 2015-07-16 13:12:15 +02:00
Martino Facchin b38d7f07f0 implement PUSB modules as linked list 2015-07-16 13:12:14 +02:00
Martino Facchin 353ef39c23 remove useless variables 2015-07-16 13:12:14 +02:00
Martino Facchin d3815e7e36 add PluggableUSB module 2015-07-16 13:12:14 +02:00