Quantum 3
3.1.0
A managed type that wraps a heap object and an allocation tracker. More...
Public Member Functions | |
| FrameHeap (ITrackableFrameHeap heap, IHeapAllocationTracker tracker) | |
| Creates a new instance of FrameHeap. More... | |
| void * | Allocate (int size) |
| Allocates a block of memory of the specified size. More... | |
| void * | AllocateAndClear (int size) |
| Allocates a block of memory of the specified size and clears it. More... | |
| Ptr | AllocateAndClearPtr (int size) |
| Allocates a Ptr for a block of memory of the specified size and clears it. More... | |
| Ptr | AllocatePtr (int size) |
| Allocates a Ptr for a block of memory of the specified size. More... | |
| void | Free (Ptr ptr) |
| Frees a Ptr for a block of memory. More... | |
| void | Free (void *ptr) |
| Frees a block of memory. More... | |
| Heap.Stats | GetStats () |
| Return a compact statistic report about the memory usage. More... | |
| void * | Void (Ptr p) |
| Converts a Ptr to a void pointer. More... | |
| Ptr | Void (void *ptr) |
| Converts a pointer to a void pointer. More... | |
| TPtr * | Void< TPtr > (Ptr p) |
| Converts a Ptr to a typed pointer. More... | |
Public Member Functions inherited from Quantum.Allocator.IFrameHeap | |
| void * | Expand (void *buffer, int currentSize, int newSize) |
| Expands a memory block in the given buffer to the specified new size. More... | |
| T * | ExpandArray< T > (T *buffer, int currentSize, int newSize) |
| Expands an array in the given buffer to the specified new size. More... | |
Static Public Member Functions | |
| static void | Print (FrameHeap heap, FramePrinter printer) |
| Prints the frame heap using a FramePrinter. More... | |
Properties | |
| ITrackableFrameHeap | Heap [get] |
| Access the underlying heap object. More... | |
| IHeapAllocationTracker | Tracker [get] |
| Access the allocation tracker. More... | |
Properties inherited from Quantum.Allocator.IFrameHeap | |
| int | PageSize [get] |
| The size of a page in the heap. More... | |
A managed type that wraps a heap object and an allocation tracker.
|
inline |
Creates a new instance of FrameHeap.
| heap | The heap instance |
| tracker | The tracker instance |
|
inline |
Allocates a block of memory of the specified size.
| size | The size of the memory block to allocate. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Allocates a Ptr for a block of memory of the specified size.
| size | The size of the memory block to allocate. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Allocates a block of memory of the specified size and clears it.
| size | The size of the memory block to allocate. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Allocates a Ptr for a block of memory of the specified size and clears it.
| size | The size of the memory block to allocate. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Frees a Ptr for a block of memory.
| ptr | A Ptr for the memory block to free. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Frees a block of memory.
| ptr | A pointer to the memory block to free. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Converts a pointer to a void pointer.
| ptr | A pointer to convert. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Converts a Ptr to a void pointer.
| p | A Ptr to convert. |
Implements Quantum.Allocator.IFrameHeap.
|
inline |
Converts a Ptr to a typed pointer.
| TPtr | The type of the pointer to convert to. |
| p | A Ptr to convert. |
Implements Quantum.Allocator.IFrameHeap.
| TPtr | : | unmanaged |
|
inline |
Return a compact statistic report about the memory usage.
|
inlinestatic |
Prints the frame heap using a FramePrinter.
| heap | Heap object |
| printer | Printer object |
|
get |
Access the underlying heap object.
|
get |
Access the allocation tracker.