vsg 1.1.10
VulkanSceneGraph library
Loading...
Searching...
No Matches
vsg::IntrusiveAllocator::MemoryBlock Struct Reference
Collaboration diagram for vsg::IntrusiveAllocator::MemoryBlock:

Classes

struct  Element
struct  FreeList
struct  SlotTester

Public Member Functions

 MemoryBlock (const std::string &in_name, size_t in_blockSize, size_t in_alignment)
void * allocate (std::size_t size)
bool deallocate (void *ptr, std::size_t size)
void report (std::ostream &out) const
bool validate () const
bool freeSlotsAvaible (size_t size) const
bool within (const void *ptr) const
size_t totalAvailableSize () const
size_t totalReservedSize () const
size_t totalMemorySize () const

Static Public Member Functions

static size_t computeMaxiumAllocationSize (size_t blockSize, size_t alignment)

Public Attributes

std::string name
Elementmemory = nullptr
ElementmemoryEnd = nullptr
size_t alignment = 8
size_t blockAlignment = 16
size_t blockSize = 0
size_t maximumAllocationSize = 0
Element::Index elementAlignment = 1
Element::Index firstSlot = 1
Element::Index capacity = 0
std::vector< FreeListfreeLists

The documentation for this struct was generated from the following file: