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: