eAlloc

Contents:

  • Overview
    • What is TLSF?
    • Why TLSF?
    • eAlloc Features
    • Design Philosophy
  • Quickstart
    • Basic Usage (Host/PC Example)
    • ESP32 Example (MCU)
    • StackAllocator Example
  • API Reference for eAlloc
    • dsa::TLSF::BlockHeader
      • prev_phys_block
      • size_and_flags
      • next_free
      • prev_free
    • dsa::TLSF::Control
      • block_null
      • fl_bitmap
      • cabinets
    • dsa::eAlloc
      • tlsf
      • Control
      • BlockHeader
      • Walker
      • setLock()
      • eAlloc()
      • malloc()
      • free()
      • memalign()
      • realloc()
      • calloc()
      • allocate()
      • allocate()
      • deallocate()
      • add_pool()
      • remove_pool()
      • check_pool()
      • get_pool()
      • check()
      • report()
      • logStorageReport()
      • integrity_walker()
      • MAX_POOL
      • walk_pool()
      • control
      • memory_pools
      • pool_sizes
      • pool_count
      • initialised
      • lock_
    • elock::ILockable
      • lock()
      • unlock()
      • ~ILockable()
    • dsa::eAlloc::IntegrityResult
      • prev_status
      • status
    • elock::LockGuard
      • LockGuard()
      • ~LockGuard()
      • acquired()
      • LockGuard()
      • operator=()
      • lock_
      • acquired_
    • dsa::StackAllocator::rebind
      • other
    • dsa::TLSF::SecondLevel
      • sl_bitmap
      • shelves
    • dsa::StackAllocator
      • value_type
      • pointer
      • const_pointer
      • reference
      • const_reference
      • size_type
      • difference_type
      • StackAllocator()
      • StackAllocator()
      • allocate()
      • deallocate()
      • construct()
      • destroy()
      • operator==()
      • operator!=()
      • setLock()
      • memoryPool
      • allocator
    • dsa::eAlloc::StorageReport
      • totalFreeSpace
      • largestFreeRegion
      • freeBlockCount
      • fragmentationFactor
    • dsa::TLSF
      • tlsfptr_t
      • tlsf_walker
      • get_size()
      • set_size()
      • is_free()
      • is_prev_free()
      • is_last()
      • set_free()
      • set_used()
      • set_prev_free()
      • set_prev_used()
      • to_ptr()
      • to_ptr_nc()
      • from_ptr()
      • from_ptr_nc()
      • offset_to_block()
      • offset_to_block_nc()
      • prev()
      • next()
      • next_const()
      • link_next()
      • mark_as_free()
      • mark_as_used()
      • align_up()
      • align_down()
      • align_ptr()
      • adjust_request_size()
      • mapping_insert()
      • mapping_search()
      • search_suitable_block()
      • remove_free_block()
      • insert_free_block()
      • remove()
      • insert()
      • can_split()
      • split()
      • absorb()
      • merge_prev()
      • merge_next()
      • trim_free()
      • trim_used()
      • trim_free_leading()
      • locate_free()
      • prepare_used()
      • initialise_control()
      • default_walker()
      • check()
      • cabinets()
      • shelves()
      • total_shelves()
      • size()
      • align_size()
      • min_block_size()
      • max_block_size()
      • pool_overhead()
      • alloc_overhead()
      • block_size()
      • SL_INDEX_LOG2
      • ALIGN_SIZE_LOG2
      • BLOCK_ALIGNMENT
      • FL_INDEX_MAX
      • SLI_COUNT
      • FL_INDEX_SHIFT
      • FL_INDEX_COUNT
      • SMALL_BLOCK_SIZE
      • ALIGN_SIZE
      • free_bit
      • prev_free_bit
      • flag_mask
      • block_header_overhead
      • block_start_offset
      • block_size_min
      • block_size_max
    • dsa
    • elock
    • dsa_min
    • dsa_max
    • dsa_insist
    • dsa_assert
  • Examples
    • MCU Example 1: FreeRTOS
    • MCU Example 2: ESP-IDF (ESP32)
    • Host/PC Example
    • StackAllocator Example (STL-compatible)
eAlloc
  • eAlloc Documentation

eAlloc Documentation

Welcome to the official documentation for eAlloc!

eAlloc is a modern, MCU/host-agnostic C++17 memory allocator library designed for embedded and desktop systems, featuring the TLSF algorithm for O(1) performance.

Contents:

  • Overview
    • What is TLSF?
    • Why TLSF?
    • eAlloc Features
    • Design Philosophy
  • Quickstart
    • Basic Usage (Host/PC Example)
    • ESP32 Example (MCU)
    • StackAllocator Example
  • API Reference for eAlloc
    • dsa::TLSF::BlockHeader
    • dsa::TLSF::Control
    • dsa::eAlloc
    • elock::ILockable
    • dsa::eAlloc::IntegrityResult
    • elock::LockGuard
    • dsa::StackAllocator::rebind
    • dsa::TLSF::SecondLevel
    • dsa::StackAllocator
    • dsa::eAlloc::StorageReport
    • dsa::TLSF
    • dsa
    • elock
    • dsa_min
    • dsa_max
    • dsa_insist
    • dsa_assert
  • Examples
    • MCU Example 1: FreeRTOS
    • MCU Example 2: ESP-IDF (ESP32)
    • Host/PC Example
    • StackAllocator Example (STL-compatible)
Next

© Copyright 2024, Your Name/Company.

Built with Sphinx using a theme provided by Read the Docs.