added Free() function at MemoryBlock/MemoryAllocator class.
This commit is contained in:
parent
aca6aa4ee2
commit
6f63956b9d
@ -1,4 +1,4 @@
|
|||||||
#ifndef HGL_MEMORY_ALLOCATOR_INCLUDE
|
#ifndef HGL_MEMORY_ALLOCATOR_INCLUDE
|
||||||
#define HGL_MEMORY_ALLOCATOR_INCLUDE
|
#define HGL_MEMORY_ALLOCATOR_INCLUDE
|
||||||
|
|
||||||
#include<hgl/type/DataType.h>
|
#include<hgl/type/DataType.h>
|
||||||
@ -66,7 +66,7 @@ namespace hgl
|
|||||||
virtual ~MemoryAllocator();
|
virtual ~MemoryAllocator();
|
||||||
|
|
||||||
virtual bool Alloc(const uint64 size);
|
virtual bool Alloc(const uint64 size);
|
||||||
virtual void Free();
|
virtual void Free() override;
|
||||||
};//class MemoryAllocator:public AbstractMemoryAllocator
|
};//class MemoryAllocator:public AbstractMemoryAllocator
|
||||||
}//namespace hgl
|
}//namespace hgl
|
||||||
#endif//HGL_MEMORY_ALLOCATOR_INCLUDE
|
#endif//HGL_MEMORY_ALLOCATOR_INCLUDE
|
||||||
|
@ -29,6 +29,7 @@ namespace hgl
|
|||||||
virtual void * Get (const uint64 offset) {return memory_allocator->Get(offset);}
|
virtual void * Get (const uint64 offset) {return memory_allocator->Get(offset);}
|
||||||
|
|
||||||
virtual void Clear ();
|
virtual void Clear ();
|
||||||
|
virtual void Free ();
|
||||||
virtual bool Alloc (const uint64 size,const uint64 uint_size=0);
|
virtual bool Alloc (const uint64 size,const uint64 uint_size=0);
|
||||||
virtual bool Write (const uint64 target,const void *source,const uint64 size);
|
virtual bool Write (const uint64 target,const void *source,const uint64 size);
|
||||||
virtual bool Write (const uint64 target,MemoryBlock *source,const uint64 offset,const uint64 size);
|
virtual bool Write (const uint64 target,MemoryBlock *source,const uint64 offset,const uint64 size);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#include<hgl/type/MemoryAllocator.h>
|
#include<hgl/type/MemoryAllocator.h>
|
||||||
|
|
||||||
namespace hgl
|
namespace hgl
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#include<hgl/type/MemoryBlock.h>
|
#include<hgl/type/MemoryBlock.h>
|
||||||
#include<string.h>
|
#include<string.h>
|
||||||
namespace hgl
|
namespace hgl
|
||||||
{
|
{
|
||||||
@ -13,7 +13,7 @@ namespace hgl
|
|||||||
MemoryBlock::~MemoryBlock()
|
MemoryBlock::~MemoryBlock()
|
||||||
{
|
{
|
||||||
hgl_free(temp_block);
|
hgl_free(temp_block);
|
||||||
SAFE_CLEAR(memory_allocator); //会同步释放内存
|
SAFE_CLEAR(memory_allocator); //会同步释放内存
|
||||||
}
|
}
|
||||||
|
|
||||||
void MemoryBlock::Clear()
|
void MemoryBlock::Clear()
|
||||||
@ -21,6 +21,11 @@ namespace hgl
|
|||||||
memory_allocator->Clear();
|
memory_allocator->Clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MemoryBlock::Free()
|
||||||
|
{
|
||||||
|
memory_allocator->Free();
|
||||||
|
}
|
||||||
|
|
||||||
bool MemoryBlock::Alloc(const uint64 size,const uint64 uint_size)
|
bool MemoryBlock::Alloc(const uint64 size,const uint64 uint_size)
|
||||||
{
|
{
|
||||||
memory_allocator->SetAllocUnitSize(uint_size);
|
memory_allocator->SetAllocUnitSize(uint_size);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user