//***************************************************************************** // //! Reads data from a ring buffer. //! //! \param psUSBRingBuf points to the ring buffer to be read from. //! \param pui8Data points to where the data should be stored. //! \param ui32Length is the number of bytes to be read. //! //! This function reads a sequence of bytes from a ring buffer. //! //! \return None. // //***************************************************************************** void USBRingBufRead(tUSBRingBufObject *psUSBRingBuf, uint8_t *pui8Data, uint32_t ui32Length) { uint32_t ui32Temp; // // Check the arguments. // ASSERT(psUSBRingBuf != NULL); ASSERT(pui8Data != NULL); ASSERT(ui32Length != 0); // // Verify that data is available in the buffer. // ASSERT(ui32Length <= USBRingBufUsed(psUSBRingBuf)); // // Read the data from the ring buffer. // for(ui32Temp = 0; ui32Temp < ui32Length; ui32Temp++) { pui8Data[ui32Temp] = USBRingBufReadOne(psUSBRingBuf); } }
//***************************************************************************** // //! Reads data from a ring buffer. //! //! \param ptUSBRingBuf points to the ring buffer to be read from. //! \param pucData points to where the data should be stored. //! \param ulLength is the number of bytes to be read. //! //! This function reads a sequence of bytes from a ring buffer. //! //! \return None. // //***************************************************************************** void USBRingBufRead(tUSBRingBufObject *ptUSBRingBuf, unsigned char *pucData, unsigned long ulLength) { unsigned long ulTemp; // // Check the arguments. // ASSERT(ptUSBRingBuf != NULL); ASSERT(pucData != NULL); ASSERT(ulLength != 0); // // Verify that data is available in the buffer. // ASSERT(ulLength <= USBRingBufUsed(ptUSBRingBuf)); // // Read the data from the ring buffer. // for(ulTemp = 0; ulTemp < ulLength; ulTemp++) { pucData[ulTemp] = USBRingBufReadOne(ptUSBRingBuf); } }