|
VAE - Virtual Audio Engine 1
Small Data Driven Audio Engine
|
Pool which proxies allocations to the stdlib. More...
#include <TMemoryPoolStd.hpp>
Public Member Functions | |
| void * | allocate (Size size) override |
| void | deallocate (void *ptr) override |
| void * | reallocate (void *ptr, size_t size) override |
Public Member Functions inherited from tklb::memory::MemoryPool | |
| MemoryPool (void *pool, Size size) | |
| Construct a pool from memory provided. More... | |
| ~MemoryPool () | |
| Size | getAllocated () const |
| Size | getTotalSize () const |
| void * | clearallocate (size_t num, size_t size) |
| Allocates space for num of structs with size size and clears the memory. More... | |
| template<class T , typename ... Args> | |
| T * | create (Args &&... args) |
| Acts like new. More... | |
| template<class T , typename ... Args> | |
| T * | createArray (size_t count, Args &&... args) |
| template<class T > | |
| void | dispose (T *ptr) |
| Acts like delete. More... | |
| template<class T > | |
| void | disposeArray (size_t count, T *ptr) |
| Acts like delete. More... | |
| void | deallocateAligned (void *ptr) |
| void * | allocateAligned (const Size size, const Size align=DEFAULT_ALIGN) |
| Allocate aligned if simd is enabled. More... | |
Static Public Member Functions | |
| static MemoryPoolStd & | instance () |
| The pool uses the standard allocator So no need for multiple instances. More... | |
Private Member Functions | |
| MemoryPoolStd () | |
Private Attributes | |
| char | mDummyPool [sizeof(SharedPool)] |
| void *(*const | mAllocate )(size_t) |
Additional Inherited Members | |
Protected Types inherited from tklb::memory::MemoryPool | |
| using | Size = uintptr_t |
| using | Byte = unsigned char |
| using | Mutex = SpinLock |
| using | Lock = LockGuard< Mutex > |
Protected Attributes inherited from tklb::memory::MemoryPool | |
| SharedPool & | mPool |
Static Protected Attributes inherited from tklb::memory::MemoryPool | |
| static constexpr Size | DEFAULT_ALIGN = xsimd::default_arch::alignment() |
Pool which proxies allocations to the stdlib.
Needs to be included before the monkey patch.
Definition at line 14 of file TMemoryPoolStd.hpp.
|
inlineprivate |
Definition at line 17 of file TMemoryPoolStd.hpp.
|
inlineoverridevirtual |
Implements tklb::memory::MemoryPool.
Definition at line 36 of file TMemoryPoolStd.hpp.
|
inlineoverridevirtual |
Implements tklb::memory::MemoryPool.
Definition at line 47 of file TMemoryPoolStd.hpp.
|
inlinestatic |
The pool uses the standard allocator So no need for multiple instances.
Definition at line 31 of file TMemoryPoolStd.hpp.
|
inlineoverridevirtual |
Implements tklb::memory::MemoryPool.
Definition at line 56 of file TMemoryPoolStd.hpp.
|
inlineprivate |
Definition at line 18 of file TMemoryPoolStd.hpp.
|
private |
Definition at line 16 of file TMemoryPoolStd.hpp.