|
vsg 1.1.3
VulkanSceneGraph library
|
#include <Allocator.h>
Classes | |
| struct | MemoryBlock |
| struct | MemoryBlocks |
Public Member Functions | |
| Allocator (std::unique_ptr< Allocator > in_nestedAllocator={}) | |
| virtual void * | allocate (std::size_t size, AllocatorAffinity allocatorAffinity=ALLOCATOR_AFFINITY_OBJECTS) |
| allocate from the pool of memory blocks, or allocate from a new memory block | |
| virtual bool | deallocate (void *ptr, std::size_t size) |
| deallocate, returning data to pool. | |
| virtual size_t | deleteEmptyMemoryBlocks () |
| delete any MemoryBlock that are empty | |
| virtual size_t | totalAvailableSize () const |
| return the total available size of allocated MemoryBlocks | |
| virtual size_t | totalReservedSize () const |
| return the total reserved size of allocated MemoryBlocks | |
| virtual size_t | totalMemorySize () const |
| return the total memory size of allocated MemoryBlocks | |
| virtual void | report (std::ostream &out) const |
| report stats about blocks of memory allocated. | |
| void | setMemoryTracking (int mt) |
| set the MemoryTracking member of the vsg::Allocator and all the MemoryBlocks that it manages. | |
| MemoryBlocks * | getMemoryBlocks (AllocatorAffinity allocatorAffinity) |
| MemoryBlocks * | getOrCreateMemoryBlocks (AllocatorAffinity allocatorAffinity, const std::string &name, size_t blockSize) |
| void | setBlockSize (AllocatorAffinity allocatorAffinity, size_t blockSize) |
Static Public Member Functions | |
| static std::unique_ptr< Allocator > & | instance () |
| Allocator singleton. | |
Public Attributes | |
| AllocatorType | allocatorType = ALLOCATOR_TYPE_VSG_ALLOCATOR |
| AllocatorType | memoryBlocksAllocatorType = ALLOCATOR_TYPE_NEW_DELETE |
| int | memoryTracking = MEMORY_TRACKING_DEFAULT |
| std::mutex | mutex |
| double | allocationTime = 0.0 |
| double | deallocationTime = 0.0 |
Protected Attributes | |
| std::unique_ptr< Allocator > | nestedAllocator |
| std::vector< std::unique_ptr< MemoryBlocks > > | allocatorMemoryBlocks |
extensible Allocator that handles allocation and deallocation of scene graph CPU memory,