SuperMarioOdysseyOnline/include/agl/detail/MemoryPool.h

39 lines
823 B
C++

/**
* @file MemoryPool.h
* @brief Defines classes for memory pools for storage.
*/
#pragma once
#include "types.h"
namespace agl
{
typedef s32 MemoryAttribute;
namespace detail
{
class MemoryPoolType
{
public:
static s32 convert(agl::MemoryAttribute);
static u32 cInvalidPoolType; // 0
static u32 cValidPoolType; // 0x80000000
};
class MemoryPool
{
public:
MemoryPool();
void initialize(void *, u64, agl::detail::MemoryPoolType const &);
void initialize(void *, u64, agl::detail::MemoryPoolType const &, agl::detail::MemoryPool const &, s32);
void finalize();
u8 _0[0x104]; // todo: where do the parent 0x100 bytes come from?
};
};
};