class Enlighten::WorkspaceAllocator
A specialised circular/stack allocator hybrid for allocating solve workspace memory.
Functions
Name | Description |
---|---|
Alloc(Geo::u32) | Allocate memory from the allocator. |
Dealloc(void *) | Return memory to the allocator. |
IsEmpty() | Is the allocator completely empty (i.e. no outstanding allocations)? |
WorkspaceAllocator(Geo::u32, Geo::u32) | Construct a new allocator with a specified block and maximum size. |
Anchor | ||||
---|---|---|---|---|
|
void* Enlighten::WorkspaceAllocator::Alloc
...
public: void * Alloc
(
Geo::u32 size
)
...
Allocate memory from the allocator.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::WorkspaceAllocator::Dealloc
...
public: void Dealloc
(
void * ptr
)
...
Return memory to the allocator.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::WorkspaceAllocator::IsEmpty
...
public: bool IsEmpty() const
...
Is the allocator completely empty (i.e. no outstanding allocations)?
Anchor | ||||
---|---|---|---|---|
|
Enlighten::WorkspaceAllocator::WorkspaceAllocator
...
public: WorkspaceAllocator
(
Geo::u32 blockSize,
Geo::u32 maxSize
)
...
Construct a new allocator with a specified block and maximum size.