Fix doxygen documentation - doxygen was getting confused on the variable-length ATTR_NON_NULL_PTR_ARG() macro used on function prototypes and was generating many return types for several functions in the documentation (thanks to David Lyons).
This commit is contained in:
		
							parent
							
								
									9b20114555
								
							
						
					
					
						commit
						d753512cca
					
				
					 21 changed files with 66 additions and 52 deletions
				
			
		| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassAudio Audio Device Class Driver - LUFA/Drivers/Class/Audio.h
 | 
			
		||||
 *  @defgroup Group_USBClassAudio Audio Class Driver - LUFA/Drivers/Class/Audio.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassCDC CDC Device Class Driver - LUFA/Drivers/Class/CDC.h
 | 
			
		||||
 *  @defgroup Group_USBClassCDC CDC Class Driver - LUFA/Drivers/Class/CDC.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -163,7 +163,8 @@
 | 
			
		|||
			 *
 | 
			
		||||
			 *  \return A value from the \ref Endpoint_Stream_RW_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t CDC_Device_SendString(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo, char* const Data, const uint16_t Length) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			uint8_t CDC_Device_SendString(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo, char* const Data, const uint16_t Length)
 | 
			
		||||
			                              ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
			
 | 
			
		||||
			/** Sends a given byte to the attached USB host, if connected. If a host is not connected when the function is called, the
 | 
			
		||||
			 *  byte is discarded.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -154,7 +154,8 @@
 | 
			
		|||
			 *          the idle period (useful for devices which report relative movement), false otherwise
 | 
			
		||||
			 */
 | 
			
		||||
			bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo, uint8_t* const ReportID,
 | 
			
		||||
                                                     void* ReportData, uint16_t* ReportSize) ATTR_NON_NULL_PTR_ARG(1, 2, 3, 4);
 | 
			
		||||
                                                     void* ReportData, uint16_t* ReportSize) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2)
 | 
			
		||||
			                                         ATTR_NON_NULL_PTR_ARG(3) ATTR_NON_NULL_PTR_ARG(4);
 | 
			
		||||
			
 | 
			
		||||
			/** HID class driver callback for the user processing of a received HID OUT report. This callback may fire in response to
 | 
			
		||||
			 *  either HID class control requests from the host, or by the normal HID endpoint polling procedure. Inside this callback
 | 
			
		||||
| 
						 | 
				
			
			@ -167,7 +168,8 @@
 | 
			
		|||
			 *  \param[in] ReportSize  Size in bytes of the received report from the host.
 | 
			
		||||
			 */
 | 
			
		||||
			void CALLBACK_HID_Device_ProcessHIDReport(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo, const uint8_t ReportID,
 | 
			
		||||
			                                          const void* ReportData, const uint16_t ReportSize) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                          const void* ReportData, const uint16_t ReportSize) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                                          ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
	/* Disable C linkage for C++ Compilers: */
 | 
			
		||||
		#if defined(__cplusplus)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -119,7 +119,7 @@
 | 
			
		|||
			 *  \return A value from the \ref Endpoint_Stream_RW_ErrorCodes_t enum			 
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MIDI_Device_SendEventPacket(USB_ClassInfo_MIDI_Device_t* const MIDIInterfaceInfo,
 | 
			
		||||
			                                    MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                    MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Receives a MIDI event packet from the host.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -129,7 +129,7 @@
 | 
			
		|||
			 *  \return Boolean true if a MIDI event packet was received, false otherwise
 | 
			
		||||
			 */
 | 
			
		||||
			bool MIDI_Device_ReceiveEventPacket(USB_ClassInfo_MIDI_Device_t* const MIDIInterfaceInfo,
 | 
			
		||||
			                                    MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                    MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
	/* Disable C linkage for C++ Compilers: */
 | 
			
		||||
		#if defined(__cplusplus)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -133,12 +133,15 @@
 | 
			
		|||
	#if !defined(__DOXYGEN__)
 | 
			
		||||
		/* Function Prototypes: */
 | 
			
		||||
		#if defined(INCLUDE_FROM_RNDIS_CLASS_DEVICE_C)
 | 
			
		||||
			static void RNDIS_Device_ProcessRNDISControlMessage(USB_ClassInfo_RNDIS_Device_t* const RNDISInterfaceInfo) ATTR_NON_NULL_PTR_ARG(1);
 | 
			
		||||
			static void RNDIS_Device_ProcessRNDISControlMessage(USB_ClassInfo_RNDIS_Device_t* const RNDISInterfaceInfo)
 | 
			
		||||
			                                                    ATTR_NON_NULL_PTR_ARG(1);
 | 
			
		||||
			static bool RNDIS_Device_ProcessNDISQuery(USB_ClassInfo_RNDIS_Device_t* const RNDISInterfaceInfo, 
 | 
			
		||||
			                                          const uint32_t OId, void* const QueryData, const uint16_t QuerySize,
 | 
			
		||||
										              void* ResponseData, uint16_t* const ResponseSize) ATTR_NON_NULL_PTR_ARG(1, 5, 6);
 | 
			
		||||
										              void* ResponseData, uint16_t* const ResponseSize) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                                          ATTR_NON_NULL_PTR_ARG(5) ATTR_NON_NULL_PTR_ARG(6);
 | 
			
		||||
			static bool RNDIS_Device_ProcessNDISSet(USB_ClassInfo_RNDIS_Device_t* const RNDISInterfaceInfo, const uint32_t OId,
 | 
			
		||||
			                                        void* SetData, const uint16_t SetSize) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                        void* SetData, const uint16_t SetSize) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                                        ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
		#endif
 | 
			
		||||
		
 | 
			
		||||
	#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassHID HID Device Class Driver - LUFA/Drivers/Class/HID.h
 | 
			
		||||
 *  @defgroup Group_USBClassHID HID Class Driver - LUFA/Drivers/Class/HID.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -147,7 +147,7 @@
 | 
			
		|||
			 *  \return A value from the \ref CDCHost_EnumerationFailure_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t CDC_Host_ConfigurePipes(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo, uint16_t ConfigDescriptorSize,
 | 
			
		||||
			                                void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
			
 | 
			
		||||
			/** Sets the line encoding for the attached device's virtual serial port. This should be called when the LineEncoding
 | 
			
		||||
			 *  values of the interface have been changed to push the new settings to the USB device.
 | 
			
		||||
| 
						 | 
				
			
			@ -178,7 +178,8 @@
 | 
			
		|||
			 *
 | 
			
		||||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t CDC_Host_SendString(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo, char* Data, const uint16_t Length) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			uint8_t CDC_Host_SendString(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo, char* Data, const uint16_t Length)
 | 
			
		||||
			                            ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
			
 | 
			
		||||
			/** Sends a given byte to the attached USB device, if connected. If a host is not connected when the function is called, the
 | 
			
		||||
			 *  byte is discarded.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -154,7 +154,7 @@
 | 
			
		|||
			 *  \return A value from the \ref HIDHost_EnumerationFailure_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, uint16_t ConfigDescriptorSize,
 | 
			
		||||
			                                void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
			/** Receives a HID IN report from the attached HID device, when a report has been received on the HID IN Data pipe.
 | 
			
		||||
| 
						 | 
				
			
			@ -167,7 +167,8 @@
 | 
			
		|||
			 *
 | 
			
		||||
			 *  \return An error code from the \ref Pipe_Stream_RW_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t HID_Host_ReceiveReport(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, void* Buffer) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			uint8_t HID_Host_ReceiveReport(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, void* Buffer)
 | 
			
		||||
			                               ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			#if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)
 | 
			
		||||
			/** Receives a HID IN report from the attached device, by the report ID.
 | 
			
		||||
| 
						 | 
				
			
			@ -181,7 +182,7 @@
 | 
			
		|||
			 *  \return A value from the \ref USB_Host_SendControlErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t HID_Host_ReceiveReportByID(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo, const uint8_t ReportID,
 | 
			
		||||
			                                   void* Buffer) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                   void* Buffer) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
			#endif
 | 
			
		||||
			
 | 
			
		||||
			/** Sends an OUT report to the currently attached HID device, using the device's OUT pipe if available or the device's
 | 
			
		||||
| 
						 | 
				
			
			@ -202,11 +203,11 @@
 | 
			
		|||
			#if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)
 | 
			
		||||
			                                const uint8_t ReportID,
 | 
			
		||||
			#endif
 | 
			
		||||
			                                void* Buffer, const uint16_t ReportSize)
 | 
			
		||||
			                                void* Buffer, const uint16_t ReportSize) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			#if !defined(HID_HOST_BOOT_PROTOCOL_ONLY)
 | 
			
		||||
			                                ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
			#else
 | 
			
		||||
			                                ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
			#endif
 | 
			
		||||
 | 
			
		||||
			/** Determines if a HID IN report has been received from the attached device on the data IN pipe.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -238,7 +238,7 @@
 | 
			
		|||
			 *  \return A value in the \ref HID_Parse_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t USB_ProcessHIDReport(const uint8_t* ReportData, uint16_t ReportSize, HID_ReportInfo_t* const ParserData)
 | 
			
		||||
			                             ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                             ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
			/** Extracts the given report item's value out of the given HID report and places it into the Value
 | 
			
		||||
			 *  member of the report item's \ref HID_ReportItem_t structure.
 | 
			
		||||
| 
						 | 
				
			
			@ -249,7 +249,7 @@
 | 
			
		|||
			 *  \returns Boolean true if the item to retrieve was located in the given report, false otherwise
 | 
			
		||||
			 */
 | 
			
		||||
			bool USB_GetHIDReportItemInfo(const uint8_t* ReportData, HID_ReportItem_t* const ReportItem)
 | 
			
		||||
			                              ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                              ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Retrieves the given report item's value out of the Value member of the report item's
 | 
			
		||||
			 *  \ref HID_ReportItem_t structure and places it into the correct position in the HID report
 | 
			
		||||
| 
						 | 
				
			
			@ -262,7 +262,7 @@
 | 
			
		|||
			 *  \param[in] ReportItem  Pointer to the report item of interest in a \ref HID_ReportInfo_t ReportItem array
 | 
			
		||||
			 */
 | 
			
		||||
			void USB_SetHIDReportItemInfo(uint8_t* ReportData, const HID_ReportItem_t* ReportItem)
 | 
			
		||||
			                              ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                              ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
										  
 | 
			
		||||
			/** Retrieves the size of a given HID report in bytes from it's Report ID.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -274,7 +274,7 @@
 | 
			
		|||
			 *  \return Size of the report in bytes, or 0 if the report does not exist
 | 
			
		||||
			 */
 | 
			
		||||
			uint16_t USB_GetHIDReportSize(HID_ReportInfo_t* const ParserData, const uint8_t ReportID,
 | 
			
		||||
			                              const uint8_t ReportType) ATTR_NON_NULL_PTR_ARG(1) ATTR_CONST;
 | 
			
		||||
			                              const uint8_t ReportType) ATTR_CONST ATTR_NON_NULL_PTR_ARG(1);
 | 
			
		||||
 | 
			
		||||
			/** Callback routine for the HID Report Parser. This callback <b>must</b> be implemented by the user code when
 | 
			
		||||
			 *  the parser is used, to determine what report IN, OUT and FEATURE item's information is stored into the user
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -117,7 +117,7 @@
 | 
			
		|||
			 *  \return A value from the \ref MIDIHost_EnumerationFailure_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MIDI_Host_ConfigurePipes(USB_ClassInfo_MIDI_Host_t* const MIDIInterfaceInfo, uint16_t ConfigDescriptorSize,
 | 
			
		||||
			                                 void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                 void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
			/** Sends a MIDI event packet to the device. If no device is connected, the event packet is discarded.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -127,7 +127,7 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum			 
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MIDI_Host_SendEventPacket(USB_ClassInfo_MIDI_Host_t* const MIDIInterfaceInfo,
 | 
			
		||||
			                                  MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                  MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Receives a MIDI event packet from the device.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -137,7 +137,7 @@
 | 
			
		|||
			 *  \return Boolean true if a MIDI event packet was received, false otherwise
 | 
			
		||||
			 */
 | 
			
		||||
			bool MIDI_Host_ReceiveEventPacket(USB_ClassInfo_MIDI_Host_t* const MIDIInterfaceInfo,
 | 
			
		||||
			                                  MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                  MIDI_EventPacket_t* const Event) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
												
 | 
			
		||||
	/* Private Interface - For use in library only: */
 | 
			
		||||
	#if !defined(__DOXYGEN__)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -197,7 +197,7 @@
 | 
			
		|||
			 *  \return A value from the \ref MSHost_EnumerationFailure_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MS_Host_ConfigurePipes(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, uint16_t ConfigDescriptorSize,
 | 
			
		||||
			                               void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                               void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
			/** Sends a MASS STORAGE RESET control request to the attached device, resetting the Mass Storage Interface
 | 
			
		||||
			 *  and readying it for the next Mass Storage command.
 | 
			
		||||
| 
						 | 
				
			
			@ -217,7 +217,8 @@
 | 
			
		|||
			 *
 | 
			
		||||
			 *  \return A value from the \ref USB_Host_SendControlErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MS_Host_GetMaxLUN(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, uint8_t* const MaxLUNIndex) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			uint8_t MS_Host_GetMaxLUN(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, uint8_t* const MaxLUNIndex)
 | 
			
		||||
			                          ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Retrieves the Mass Storage device's inquiry data for the specified LUN, indicating the device characteristics and
 | 
			
		||||
			 *  properties.
 | 
			
		||||
| 
						 | 
				
			
			@ -229,7 +230,8 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum or MS_ERROR_LOGICAL_CMD_FAILED
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MS_Host_GetInquiryData(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex,
 | 
			
		||||
			                               SCSI_Inquiry_Response_t* const InquiryData) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                               SCSI_Inquiry_Response_t* const InquiryData) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                               ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
			/** Sends a TEST UNIT READY command to the device, to determine if it is ready to accept other SCSI commands.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -238,7 +240,8 @@
 | 
			
		|||
			 *
 | 
			
		||||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum or MS_ERROR_LOGICAL_CMD_FAILED if not ready
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MS_Host_TestUnitReady(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex) ATTR_NON_NULL_PTR_ARG(1);
 | 
			
		||||
			uint8_t MS_Host_TestUnitReady(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex)
 | 
			
		||||
			                              ATTR_NON_NULL_PTR_ARG(1);
 | 
			
		||||
 | 
			
		||||
			/** Retrieves the total capacity of the attached USB Mass Storage device, in blocks, and block size.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -249,7 +252,8 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum or MS_ERROR_LOGICAL_CMD_FAILED if not ready
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MS_Host_ReadDeviceCapacity(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex,
 | 
			
		||||
			                                   SCSI_Capacity_t* const DeviceCapacity) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                   SCSI_Capacity_t* const DeviceCapacity) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                                   ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
		
 | 
			
		||||
			/** Retrieves the device sense data, indicating the current device state and error codes for the previously
 | 
			
		||||
			 *  issued command.
 | 
			
		||||
| 
						 | 
				
			
			@ -261,7 +265,8 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum or MS_ERROR_LOGICAL_CMD_FAILED if not ready
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t MS_Host_RequestSense(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex,
 | 
			
		||||
			                             SCSI_Request_Sense_Response_t* const SenseData) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                             SCSI_Request_Sense_Response_t* const SenseData) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                             ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
		
 | 
			
		||||
			/** Issues a PREVENT MEDIUM REMOVAL command, to logically (or, depending on the type of device, physically) lock
 | 
			
		||||
			 *  the device from removal so that blocks of data on the medium can be read or altered.
 | 
			
		||||
| 
						 | 
				
			
			@ -288,7 +293,7 @@
 | 
			
		|||
			 */
 | 
			
		||||
			uint8_t MS_Host_ReadDeviceBlocks(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex,
 | 
			
		||||
			                                 const uint32_t BlockAddress, const uint8_t Blocks, const uint16_t BlockSize,
 | 
			
		||||
			                                 void* BlockBuffer) ATTR_NON_NULL_PTR_ARG(1, 6);
 | 
			
		||||
			                                 void* BlockBuffer) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(6);
 | 
			
		||||
		
 | 
			
		||||
			/** Writes blocks of data to the attached Mass Storage device's medium.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -303,7 +308,7 @@
 | 
			
		|||
			 */
 | 
			
		||||
			uint8_t MS_Host_WriteDeviceBlocks(USB_ClassInfo_MS_Host_t* const MSInterfaceInfo, const uint8_t LUNIndex,
 | 
			
		||||
			                                  const uint32_t BlockAddress, const uint8_t Blocks, const uint16_t BlockSize,
 | 
			
		||||
			                                  void* BlockBuffer) ATTR_NON_NULL_PTR_ARG(1, 6);
 | 
			
		||||
			                                  void* BlockBuffer) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(6);
 | 
			
		||||
 | 
			
		||||
	/* Private Interface - For use in library only: */
 | 
			
		||||
	#if !defined(__DOXYGEN__)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -122,7 +122,7 @@
 | 
			
		|||
			 *  \return A value from the \ref PRNTHost_EnumerationFailure_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t PRNT_Host_ConfigurePipes(USB_ClassInfo_PRNT_Host_t* const PRNTInterfaceInfo, uint16_t ConfigDescriptorSize,
 | 
			
		||||
			                                 void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
			                                 void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
			
 | 
			
		||||
			/** Configures the printer to enable Bidirectional mode, if it is not already in this mode. This should be called
 | 
			
		||||
			 *  once the connected device's configuration has been set, to ensure the printer is ready to accept commands.
 | 
			
		||||
| 
						 | 
				
			
			@ -142,7 +142,7 @@
 | 
			
		|||
			 *  \return A value from the \ref USB_Host_SendControlErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t PRNT_Host_GetPortStatus(USB_ClassInfo_PRNT_Host_t* const PRNTInterfaceInfo, uint8_t* const PortStatus)
 | 
			
		||||
			                                ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Soft-resets the attached printer, readying it for new commands.
 | 
			
		||||
			 *
 | 
			
		||||
| 
						 | 
				
			
			@ -163,7 +163,7 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t PRNT_Host_SendData(USB_ClassInfo_PRNT_Host_t* const PRNTInterfaceInfo, void* PrinterCommands, 
 | 
			
		||||
			                           uint16_t CommandSize) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                           uint16_t CommandSize) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Retrieves the attached printer device's ID string, formatted according to IEEE 1284. This string is sent as a
 | 
			
		||||
			 *  Unicode string from the device and is automatically converted to an ASCII encoded C string by this function, thus
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -130,7 +130,7 @@
 | 
			
		|||
			 *  \return A value from the \ref SIHost_EnumerationFailure_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t SI_Host_ConfigurePipes(USB_ClassInfo_SI_Host_t* const SIInterfaceInfo, uint16_t ConfigDescriptorSize,
 | 
			
		||||
                                           void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1, 3);
 | 
			
		||||
                                           void* DeviceConfigDescriptor) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
			/** Opens a new PIMA session with the attached device. This should be used before any session-orientated PIMA commands
 | 
			
		||||
			 *  are issued to the device. Only one session can be open at the one time.
 | 
			
		||||
| 
						 | 
				
			
			@ -192,7 +192,8 @@
 | 
			
		|||
			 *          returned a logical command failure
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t SImage_Host_ReceiveEventHeader(USB_ClassInfo_SI_Host_t* const SIInterfaceInfo,
 | 
			
		||||
				                                   SI_PIMA_Container_t* const PIMAHeader) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
				                                   SI_PIMA_Container_t* const PIMAHeader) ATTR_NON_NULL_PTR_ARG(1)
 | 
			
		||||
			                                       ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
			
 | 
			
		||||
			/** Sends arbitrary data to the attached device, for use in the data phase of PIMA commands which require data
 | 
			
		||||
			 *  transfer beyond the regular PIMA command block parameters.
 | 
			
		||||
| 
						 | 
				
			
			@ -204,7 +205,7 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t SImage_Host_SendData(USB_ClassInfo_SI_Host_t* const SIInterfaceInfo, void* Buffer,
 | 
			
		||||
			                             const uint16_t Bytes) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                             const uint16_t Bytes) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Receives arbitrary data from the attached device, for use in the data phase of PIMA commands which require data
 | 
			
		||||
			 *  transfer beyond the regular PIMA command block parameters.
 | 
			
		||||
| 
						 | 
				
			
			@ -216,7 +217,7 @@
 | 
			
		|||
			 *  \return A value from the \ref Pipe_Stream_RW_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t SImage_Host_ReadData(USB_ClassInfo_SI_Host_t* const SIInterfaceInfo, void* Buffer,
 | 
			
		||||
			                             const uint16_t Bytes) ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                             const uint16_t Bytes) ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
			
 | 
			
		||||
	/* Private Interface - For use in library only: */
 | 
			
		||||
	#if !defined(__DOXYGEN__)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassMIDI MIDI Device Class Driver - LUFA/Drivers/Class/MIDI.h
 | 
			
		||||
 *  @defgroup Group_USBClassMIDI MIDI Class Driver - LUFA/Drivers/Class/MIDI.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassMS Mass Storage Device Class Driver - LUFA/Drivers/Class/MassStorage.h
 | 
			
		||||
 *  @defgroup Group_USBClassMS Mass Storage Class Driver - LUFA/Drivers/Class/MassStorage.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassPrinter Printer Device Class Driver - LUFA/Drivers/Class/Printer.h
 | 
			
		||||
 *  @defgroup Group_USBClassPrinter Printer Class Driver - LUFA/Drivers/Class/Printer.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassRNDIS RNDIS Device Class Driver - LUFA/Drivers/Class/RNDIS.h
 | 
			
		||||
 *  @defgroup Group_USBClassRNDIS RNDIS Class Driver - LUFA/Drivers/Class/RNDIS.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
*/
 | 
			
		||||
 | 
			
		||||
/** \ingroup Group_USBClassDrivers
 | 
			
		||||
 *  @defgroup Group_USBClassSI Still Image Device Class Driver - LUFA/Drivers/Class/StillImage.h
 | 
			
		||||
 *  @defgroup Group_USBClassSI Still Image Class Driver - LUFA/Drivers/Class/StillImage.h
 | 
			
		||||
 *
 | 
			
		||||
 *  \section Sec_Dependencies Module Source Dependencies
 | 
			
		||||
 *  The following files must be built with any user project that uses this module:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -203,7 +203,7 @@
 | 
			
		|||
			 *  \return A value from the \ref USB_Host_GetConfigDescriptor_ErrorCodes_t enum
 | 
			
		||||
			 */
 | 
			
		||||
			uint8_t USB_Host_GetDeviceConfigDescriptor(uint8_t ConfigNumber, uint16_t* const ConfigSizePtr, void* BufferPtr,
 | 
			
		||||
			                                           uint16_t BufferSize) ATTR_NON_NULL_PTR_ARG(2, 3);
 | 
			
		||||
			                                           uint16_t BufferSize) ATTR_NON_NULL_PTR_ARG(2) ATTR_NON_NULL_PTR_ARG(3);
 | 
			
		||||
 | 
			
		||||
			/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value.
 | 
			
		||||
			 *  The bytes remaining value is automatically decremented.
 | 
			
		||||
| 
						 | 
				
			
			@ -215,7 +215,7 @@
 | 
			
		|||
			void USB_GetNextDescriptorOfType(uint16_t* const BytesRem,
 | 
			
		||||
			                                 void** const CurrConfigLoc,
 | 
			
		||||
			                                 const uint8_t Type)
 | 
			
		||||
			                                 ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                 ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value,
 | 
			
		||||
			 *  which must come before a descriptor of the second given type value. If the BeforeType type
 | 
			
		||||
| 
						 | 
				
			
			@ -231,7 +231,7 @@
 | 
			
		|||
			                                       void** const CurrConfigLoc,
 | 
			
		||||
			                                       const uint8_t Type,
 | 
			
		||||
			                                       const uint8_t BeforeType)
 | 
			
		||||
			                                       ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                       ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
			/** Skips to the next sub-descriptor inside the configuration descriptor of the specified type value,
 | 
			
		||||
			 *  which must come after a descriptor of the second given type value. The bytes remaining value is
 | 
			
		||||
| 
						 | 
				
			
			@ -246,7 +246,7 @@
 | 
			
		|||
			                                      void** const CurrConfigLoc,
 | 
			
		||||
			                                      const uint8_t Type,
 | 
			
		||||
			                                      const uint8_t AfterType)
 | 
			
		||||
			                                      ATTR_NON_NULL_PTR_ARG(1, 2);
 | 
			
		||||
			                                      ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);
 | 
			
		||||
 | 
			
		||||
		/* Inline Functions: */
 | 
			
		||||
			/** Skips over the current sub-descriptor inside the configuration descriptor, so that the pointer then
 | 
			
		||||
| 
						 | 
				
			
			@ -257,7 +257,7 @@
 | 
			
		|||
			 */
 | 
			
		||||
			static inline void USB_GetNextDescriptor(uint16_t* const BytesRem,
 | 
			
		||||
			                                         void** const CurrConfigLoc) 
 | 
			
		||||
			                                         ATTR_NON_NULL_PTR_ARG(1, 2);									  
 | 
			
		||||
			                                         ATTR_NON_NULL_PTR_ARG(1) ATTR_NON_NULL_PTR_ARG(2);									  
 | 
			
		||||
			static inline void USB_GetNextDescriptor(uint16_t* const BytesRem,
 | 
			
		||||
			                                         void** const CurrConfigLoc)
 | 
			
		||||
			{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue