Kinoko
A reimplementation of Mario Kart Wii's physics engine in C++
Toggle main menu visibility
Loading...
Searching...
No Matches
FrmHeap.hh
1
#pragma once
2
3
#include "egg/core/Heap.hh"
4
5
#include <abstract/memory/FrameHeap.hh>
6
7
namespace
Kinoko::EGG
{
8
9
class
FrmHeap :
public
Heap {
10
public
:
11
~FrmHeap()
override
;
12
void
destroy()
override
;
13
15
[[nodiscard]] Kind getHeapKind()
const override
{
16
return
Heap::Kind::Frame;
17
}
18
19
[[nodiscard]]
void
*alloc(
size_t
size, s32 align)
override
;
20
void
free(
void
*block)
override
;
21
[[nodiscard]] u32 getAllocatableSize(s32 align = 4)
const override
;
22
23
[[nodiscard]]
Abstract::Memory::MEMiFrmHeapHead
*dynamicCastHandleToFrm();
24
[[nodiscard]]
const
Abstract::Memory::MEMiFrmHeapHead
*dynamicCastHandleToFrm()
const
;
25
26
[[nodiscard]]
static
FrmHeap *create(
void
*startAddress,
size_t
size, u16 opt);
27
[[nodiscard]]
static
FrmHeap *create(
size_t
size, Heap *heap, u16 opt);
28
29
private
:
30
FrmHeap(
Abstract::Memory::MEMiHeapHead
*handle);
31
};
32
33
}
// namespace Kinoko::EGG
Kinoko::Abstract::Memory::MEMiFrmHeapHead
Definition
FrameHeap.hh:7
Kinoko::Abstract::Memory::MEMiHeapHead
A low-level representation of a memory heap for managing dynamic memory allocation....
Definition
HeapCommon.hh:21
Kinoko::EGG
EGG core library.
Definition
Allocator.hh:5
egg
core
FrmHeap.hh
Made by
Malleo
. Logo by
vabold
. Website generated by
Doxygen
1.17.0