\r
/* Function Prototypes: */\r
/** Searches for the next descriptor in the given configuration descriptor using a premade comparator\r
\r
/* Function Prototypes: */\r
/** Searches for the next descriptor in the given configuration descriptor using a premade comparator\r
uint8_t USB_GetNextDescriptorComp(uint16_t* BytesRem, void** CurrConfigLoc, ConfigComparatorPtr_t ComparatorRoutine);\r
\r
/* Enums: */\r
uint8_t USB_GetNextDescriptorComp(uint16_t* BytesRem, void** CurrConfigLoc, ConfigComparatorPtr_t ComparatorRoutine);\r
\r
/* Enums: */\r
enum USB_Host_GetConfigDescriptor_ErrorCodes_t\r
{\r
HOST_GETCONFIG_Successful = 0, /**< No error occurred while retrieving the configuration descriptor */\r
enum USB_Host_GetConfigDescriptor_ErrorCodes_t\r
{\r
HOST_GETCONFIG_Successful = 0, /**< No error occurred while retrieving the configuration descriptor */\r
- uint8_t USB_GetDeviceConfigDescriptor(uint8_t ConfigNumber, uint16_t* const ConfigSizePtr, void* BufferPtr,\r
- uint16_t BufferSize) ATTR_NON_NULL_PTR_ARG(2, 3);\r
+ uint8_t USB_Host_GetDeviceConfigDescriptor(uint8_t ConfigNumber, uint16_t* const ConfigSizePtr, void* BufferPtr,\r
+ uint16_t BufferSize) ATTR_NON_NULL_PTR_ARG(2) ATTR_NON_NULL_PTR_ARG(3);\r
\r
/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value.\r
* The bytes remaining value is automatically decremented.\r
\r
/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value.\r
* The bytes remaining value is automatically decremented.\r
void USB_GetNextDescriptorOfType(uint16_t* const BytesRem,\r
void** const CurrConfigLoc,\r
const uint8_t Type)\r
void USB_GetNextDescriptorOfType(uint16_t* const BytesRem,\r
void** const CurrConfigLoc,\r
const uint8_t Type)\r
\r
/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value,\r
* which must come before a descriptor of the second given type value. If the BeforeType type\r
\r
/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value,\r
* which must come before a descriptor of the second given type value. If the BeforeType type\r
void** const CurrConfigLoc,\r
const uint8_t Type,\r
const uint8_t BeforeType)\r
void** const CurrConfigLoc,\r
const uint8_t Type,\r
const uint8_t BeforeType)\r
\r
/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value,\r
* which must come after a descriptor of the second given type value. The bytes remaining value is\r
\r
/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value,\r
* which must come after a descriptor of the second given type value. The bytes remaining value is\r
void** const CurrConfigLoc,\r
const uint8_t Type,\r
const uint8_t AfterType)\r
void** const CurrConfigLoc,\r
const uint8_t Type,\r
const uint8_t AfterType)\r
\r
/* Inline Functions: */\r
/** Skips over the current sub-descriptor inside the configuration descriptor, so that the pointer then\r
\r
/* Inline Functions: */\r
/** Skips over the current sub-descriptor inside the configuration descriptor, so that the pointer then\r
*/\r
static inline void USB_GetNextDescriptor(uint16_t* const BytesRem,\r
void** const CurrConfigLoc) \r
*/\r
static inline void USB_GetNextDescriptor(uint16_t* const BytesRem,\r
void** const CurrConfigLoc) \r
static inline void USB_GetNextDescriptor(uint16_t* const BytesRem,\r
void** const CurrConfigLoc)\r
{\r
uint16_t CurrDescriptorSize = DESCRIPTOR_CAST(*CurrConfigLoc, USB_Descriptor_Header_t).Size;\r
\r
static inline void USB_GetNextDescriptor(uint16_t* const BytesRem,\r
void** const CurrConfigLoc)\r
{\r
uint16_t CurrDescriptorSize = DESCRIPTOR_CAST(*CurrConfigLoc, USB_Descriptor_Header_t).Size;\r
\r