3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/client/gui/oreui/interface/IPlatformAllocator.h"
7#include "mc/external/gameface/cohtml/IAllocator.h"
8#include "mc/external/gameface/cohtml/MemTagsType.h"
17class Allocator :
public ::cohtml::IAllocator {
21 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::IPlatformAllocator>> mPlatformAllocator;
31 virtual ~Allocator() =
default;
33 virtual void* Allocate(uint size, ::cohtml::MemTags::MemTagsType tag) ;
35 virtual void* Reallocate(
void* oldPtr, uint size, ::cohtml::MemTags::MemTagsType tag) ;
37 virtual void Deallocate(
void* ptr, ::cohtml::MemTags::MemTagsType) ;
39 virtual void* AlignedAllocate(uint size, uint alignment, ::cohtml::MemTags::MemTagsType tag) ;
41 virtual void AlignedDeallocate(
void* ptr, ::cohtml::MemTags::MemTagsType) ;
44 VirtualAllocate(
void* hint, uint size,
int protection,
int flags, ::cohtml::MemTags::MemTagsType) ;
46 virtual bool VirtualFree(
void* ptr, uint size,
int flags, ::cohtml::MemTags::MemTagsType) ;
52 MCAPI
explicit Allocator(::std::unique_ptr<::OreUI::IPlatformAllocator> platformAllocator);
58 MCAPI
void* $ctor(::std::unique_ptr<::OreUI::IPlatformAllocator> platformAllocator);
64 MCAPI
void* $Allocate(uint size, ::cohtml::MemTags::MemTagsType tag);
66 MCAPI
void* $Reallocate(
void* oldPtr, uint size, ::cohtml::MemTags::MemTagsType tag);
68 MCFOLD
void $Deallocate(
void* ptr, ::cohtml::MemTags::MemTagsType);
70 MCAPI
void* $AlignedAllocate(uint size, uint alignment, ::cohtml::MemTags::MemTagsType tag);
72 MCFOLD
void $AlignedDeallocate(
void* ptr, ::cohtml::MemTags::MemTagsType);
74 MCAPI
void* $VirtualAllocate(
void* hint, uint size,
int protection,
int flags, ::cohtml::MemTags::MemTagsType);
76 MCAPI
bool $VirtualFree(
void* ptr, uint size,
int flags, ::cohtml::MemTags::MemTagsType);
static MCAPI void ** $vftable()