#include <modm/driver/storage/block_allocator.hpp>
|  | 
| void | initialize (void *heapStart, void *heapEnd) | 
|  | 
| void * | allocate (std::size_t requestedSize) | 
|  | Allocate memory. 
 | 
|  | 
| void | free (void *ptr) | 
|  | 
| std::size_t | getAvailableSize () const | 
|  | 
template<typename T, unsigned int BLOCK_SIZE>
class modm::BlockAllocator< T, BLOCK_SIZE >
Memory allocator.
- Template Parameters
- 
  
    | BLOCK_SIZE | Size of one allocatable block in words (sizeof(T) bytes) (BLOCKSIZE * sizeof(T) * n) - 4 has to be dividable by 4 for every n |  
 
- Author
- Fabian Greif 
template<typename T , unsigned int BLOCK_SIZE> 
      
        
          | void modm::BlockAllocator< T, BLOCK_SIZE >::free | ( | void * | ptr | ) |  | 
      
 
Free memory in O(1)
- Parameters
- 
  
    | ptr | Must be the same pointer previously acquired by allocate(). |  
 
 
 
template<typename T , unsigned int BLOCK_SIZE> 
      
        
          | void modm::BlockAllocator< T, BLOCK_SIZE >::initialize | ( | void * | heapStart, | 
        
          |  |  | void * | heapEnd | 
        
          |  | ) |  |  | 
      
 
Initialize the raw memory.
Needs to called before any calls to allocate() or free(). Must be called only once!
- Parameters
- 
  
    | heapStart | Needs to point to the first available byte |  | heapEnd | Needs to point directly above the last available memory position. |  
 
 
 
The documentation for this class was generated from the following file: