Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of F401RE-USBHost by
Diff: USBHost/USBDeviceConnected.h
- Revision:
- 9:7f9f64cf5ded
- Parent:
- 8:6463cd1964c0
- Child:
- 10:40c7f6788902
--- a/USBHost/USBDeviceConnected.h Fri Jan 31 13:45:07 2014 +0000 +++ b/USBHost/USBDeviceConnected.h Mon Feb 03 13:00:16 2014 +0000 @@ -17,19 +17,25 @@ #include "USBEndpoint.h" #include "USBHostConf.h" +#include "myqueue.h" +#include "mymap.h" class USBEndpoint; -typedef struct { +struct INTERFACE { + INTERFACE() { + in_use = false; + intf_class = 0; + intf_subclass = 0; + intf_protocol = 0; + ep.clear(); + } bool in_use; - uint8_t nb_endpoint; uint8_t intf_class; uint8_t intf_subclass; uint8_t intf_protocol; - USBEndpoint * ep[MAX_ENDPOINT_PER_INTERFACE]; - //FunctionPointer detach; - //char name[10]; -} INTERFACE; + myqueue<USBEndpoint*>ep; +}; /** * USBDeviceConnected class @@ -83,14 +89,6 @@ bool addInterface(uint8_t intf_nb, uint8_t intf_class, uint8_t intf_subclass, uint8_t intf_protocol); /** - * Get a specific interface - * - * @param index index of the interface to be fetched - * @returns interface - */ - INTERFACE * getInterface(uint8_t index); - - /** * Disconnect the device by calling a callback function registered by a driver */ void disconnect(); @@ -122,7 +120,7 @@ USBEndpoint* getEpCtl() { return ep_ctl; } private: - INTERFACE intf[MAX_INTF]; + mymap<int,INTERFACE*>intf; uint8_t hub_nb; uint8_t port; uint16_t vid;