sead
Loading...
Searching...
No Matches
agl::utl::DynamicTextureAllocator Class Reference

#include <aglDynamicTextureAllocator.h>

Classes

struct  Context

Public Types

enum  AllocateType { cAllocateType_Num = 3 }

Public Member Functions

 DynamicTextureAllocator ()
virtual ~DynamicTextureAllocator ()
TextureDataalloc (const sead::SafeString &name, TextureFormat format, u32 width, u32 height, u32 mip_level_num, void **pp_buffer=nullptr, AllocateType allocate_type=AllocateType(0), bool invalidate_gpu_cache=true)
void free (const TextureData *ptr)

Private Member Functions

bool isValid_ (const Context *p_ctx) const
bool isContextValid_ (const Context *p_ctx) const
TextureDataalloc_ (Context *p_ctx, const sead::SafeString &name, TextureFormat format, TextureType type, u32 width, u32 height, u32 mip_level_num, MultiSampleType multi_sample_type, u32 slice_num, void **pp_buffer, bool allocate_from_head, AllocateType allocate_type, bool invalidate_gpu_cache)
bool free_ (Context *p_ctx, const TextureData *ptr)

Private Attributes

sead::BitFlag32 _10
sead::UnsafeArray< Context, 4 > mContext
sead::CriticalSection mCriticalSection
u32 _2470
sead::HeapmpDebugHeap

Friends

class TextureDataEx

Member Enumeration Documentation

◆ AllocateType

Enumerator
cAllocateType_Num 

Constructor & Destructor Documentation

◆ DynamicTextureAllocator()

agl::utl::DynamicTextureAllocator::DynamicTextureAllocator ( )

◆ ~DynamicTextureAllocator()

virtual agl::utl::DynamicTextureAllocator::~DynamicTextureAllocator ( )
virtual

Member Function Documentation

◆ alloc()

TextureData * agl::utl::DynamicTextureAllocator::alloc ( const sead::SafeString & name,
TextureFormat format,
u32 width,
u32 height,
u32 mip_level_num,
void ** pp_buffer = nullptr,
AllocateType allocate_type = AllocateType(0),
bool invalidate_gpu_cache = true )

◆ free()

void agl::utl::DynamicTextureAllocator::free ( const TextureData * ptr)

◆ isValid_()

bool agl::utl::DynamicTextureAllocator::isValid_ ( const Context * p_ctx) const
private

◆ isContextValid_()

bool agl::utl::DynamicTextureAllocator::isContextValid_ ( const Context * p_ctx) const
private

◆ alloc_()

TextureData * agl::utl::DynamicTextureAllocator::alloc_ ( Context * p_ctx,
const sead::SafeString & name,
TextureFormat format,
TextureType type,
u32 width,
u32 height,
u32 mip_level_num,
MultiSampleType multi_sample_type,
u32 slice_num,
void ** pp_buffer,
bool allocate_from_head,
AllocateType allocate_type,
bool invalidate_gpu_cache )
private

◆ free_()

bool agl::utl::DynamicTextureAllocator::free_ ( Context * p_ctx,
const TextureData * ptr )
private

◆ TextureDataEx

friend class TextureDataEx
friend

Member Data Documentation

◆ _10

sead::BitFlag32 agl::utl::DynamicTextureAllocator::_10
private

◆ mContext

sead::UnsafeArray<Context, 4> agl::utl::DynamicTextureAllocator::mContext
private

◆ mCriticalSection

sead::CriticalSection agl::utl::DynamicTextureAllocator::mCriticalSection
private

◆ _2470

u32 agl::utl::DynamicTextureAllocator::_2470
private

◆ mpDebugHeap

sead::Heap* agl::utl::DynamicTextureAllocator::mpDebugHeap
private