* Dynamic, auto-defragmenting block memory allocator library. This library provides a convenient replacement for\r
* the standard avr-libc dynamic memory allocation routines. Memory is handed out in block chunks, to reduce the\r
* management memory overhead.\r
+ */\r
+\r
+/** @defgroup Group_MemoryAllocator Dynamic Block Memory Allocator - LUFA/MemoryAllocator/DynAlloc.h\r
+ *\r
+ * \section Sec_Dependencies Module Source Dependencies\r
+ * The following files must be built with any user project that uses this module:\r
+ * - LUFA/MemoryAllocator/DynAlloc.c\r
+ *\r
+ * \section Module Description\r
+ * Dynamic, auto-defragmenting block memory allocator library. This library provides a convenient replacement for\r
+ * the standard avr-libc dynamic memory allocation routines. Memory is handed out in block chunks, to reduce the\r
+ * management memory overhead.\r
*\r
* Unlike the normal memory allocation routines, this library gives out handles to memory which must be dereferenced\r
* at the exact time of use, rather than handing back direct memory pointers. By using library managed handles\r
* The constants NUM_BLOCKS, BLOCK_SIZE and NUM_HANDLES must be defined in the project makefile (and passed to the\r
* preprocessor via the -D GCC switch) for this library to compile.\r
*\r
- * NUM_BLOCKS indicates the number of memory blocks in the memory psudoheap which can be chaned together and handed\r
+ * NUM_BLOCKS indicates the number of memory blocks in the memory psudoheap which can be chained together and handed\r
* to the application via a memory handle. NUM_HANDLES is the maximum number of memory handles (pointing to one or\r
- * more chained memory blocks) which can be handed out simultaneously before requring a handle (and its associated\r
- * memory) to be freed. BLOCK_SIZE gives the number of bytes in each memory block.\r
+ * more chained memory blocks) which can be handed out simultaneously before requiring a handle (and its associated\r
+ * memory) to be freed. BLOCK_SIZE gives the number of bytes in each memory block. \r
+ *\r
+ * @{\r
*/\r
\r
#ifndef __DYN_ALLOC__\r
/* Public Interface - May be used in end-application: */\r
/* Macros: */\r
/** Macro to dereference a given memory handle into the given type. The given type should be a pointer\r
- * if the memory is to contain an array of items, or should be a standard type (such as a primative or\r
+ * if the memory is to contain an array of items, or should be a standard type (such as a primitive or\r
* structure) if the memory is to hold a single item of a single type. */\r
#define DEREF(handle, type) (*(type*)handle)\r
\r
#endif\r
\r
#endif\r
+\r
+/** @} */\r