X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/eee252603be67c539f9986cde76454f756e55d95..9dc7e68d76d338a3d15437a5a6c8ec5ce4fb3c64:/LUFA/Drivers/Misc/RingBuffer.h diff --git a/LUFA/Drivers/Misc/RingBuffer.h b/LUFA/Drivers/Misc/RingBuffer.h index d7edf97fa..97648c806 100644 --- a/LUFA/Drivers/Misc/RingBuffer.h +++ b/LUFA/Drivers/Misc/RingBuffer.h @@ -1,13 +1,13 @@ /* LUFA Library - Copyright (C) Dean Camera, 2012. + Copyright (C) Dean Camera, 2014. dean [at] fourwalledcubicle [dot] com www.lufa-lib.org */ /* - Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com) + Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com) Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted @@ -44,11 +44,11 @@ * \defgroup Group_RingBuff Generic Byte Ring Buffer - LUFA/Drivers/Misc/RingBuffer.h * \brief Lightweight ring buffer, for fast insertion/deletion of bytes. * - * \section Sec_Dependencies Module Source Dependencies + * \section Sec_RingBuff_Dependencies Module Source Dependencies * The following files must be built with any user project that uses this module: * - None * - * \section Sec_ModDescription Module Description + * \section Sec_RingBuff_ModDescription Module Description * Lightweight ring buffer, for fast insertion/deletion. Multiple buffers can be created of * different sizes to suit different needs. * @@ -57,7 +57,7 @@ * or deletions) must not overlap. If there is possibility of two or more of the same kind of * operating occurring at the same point in time, atomic (mutex) locking should be used. * - * \section Sec_ExampleUsage Example Usage + * \section Sec_RingBuff_ExampleUsage Example Usage * The following snippet is an example of how this module may be used within a typical * application. * @@ -65,23 +65,23 @@ * // Create the buffer structure and its underlying storage array * RingBuffer_t Buffer; * uint8_t BufferData[128]; - * + * * // Initialize the buffer with the created storage array * RingBuffer_InitBuffer(&Buffer, BufferData, sizeof(BufferData)); - * + * * // Insert some data into the buffer * RingBuffer_Insert(Buffer, 'H'); * RingBuffer_Insert(Buffer, 'E'); * RingBuffer_Insert(Buffer, 'L'); * RingBuffer_Insert(Buffer, 'L'); * RingBuffer_Insert(Buffer, 'O'); - * + * * // Cache the number of stored bytes in the buffer * uint16_t BufferCount = RingBuffer_GetCount(&Buffer); - * + * * // Printer stored data length * printf("Buffer Length: %d, Buffer Data: \r\n", BufferCount); - * + * * // Print contents of the buffer one character at a time * while (BufferCount--) * putc(RingBuffer_Remove(&Buffer)); @@ -204,7 +204,7 @@ * * \param[in,out] Buffer Pointer to a ring buffer structure to insert into. * - * \return Boolean \c true if the buffer contains no free space, false otherwise. + * \return Boolean \c true if the buffer contains no free space, \c false otherwise. */ static inline bool RingBuffer_IsEmpty(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1); static inline bool RingBuffer_IsEmpty(RingBuffer_t* const Buffer) @@ -218,7 +218,7 @@ * * \param[in,out] Buffer Pointer to a ring buffer structure to insert into. * - * \return Boolean \c true if the buffer contains no free space, false otherwise. + * \return Boolean \c true if the buffer contains no free space, \c false otherwise. */ static inline bool RingBuffer_IsFull(RingBuffer_t* const Buffer) ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(1); static inline bool RingBuffer_IsFull(RingBuffer_t* const Buffer) @@ -235,8 +235,10 @@ * \param[in,out] Buffer Pointer to a ring buffer structure to insert into. * \param[in] Data Data element to insert into the buffer. */ - static inline void RingBuffer_Insert(RingBuffer_t* Buffer, const uint8_t Data) ATTR_NON_NULL_PTR_ARG(1); - static inline void RingBuffer_Insert(RingBuffer_t* Buffer, const uint8_t Data) + static inline void RingBuffer_Insert(RingBuffer_t* Buffer, + const uint8_t Data) ATTR_NON_NULL_PTR_ARG(1); + static inline void RingBuffer_Insert(RingBuffer_t* Buffer, + const uint8_t Data) { GCC_FORCE_POINTER_ACCESS(Buffer);