A default allocator implementation based on global new and delete. More...
Public Member Functions | |
virtual void * | malloc (Size size) |
Allocates a memory block of the given size. More... | |
virtual void | free (void *memory) |
Releases the given memory block. More... | |
![]() | |
virtual Uint32 | retain () const |
Returns the fixed reference count of one. More... | |
virtual Uint32 | release () const |
Returns the fixed reference count of one. More... | |
virtual const IInterface * | get_interface (const Uuid &interface_id) const |
Acquires a const interface. More... | |
virtual IInterface * | get_interface (const Uuid &interface_id) |
Acquires a mutable interface. More... | |
Uuid | get_iid () const |
Returns the interface ID of the most derived interface. More... | |
Static Public Member Functions | |
static IAllocator * | get_instance () |
Returns the single instance of the default allocator. More... | |
Additional Inherited Members | |
![]() | |
typedef Interface_declare< id1, id2, id3, id4, id5, id6, id7, id8, id9, id10, id11, IInterface > | Self |
Own type. More... | |
typedef Uuid_t< id1, id2, id3, id4, id5, id6, id7, id8, id9, id10, id11 > | IID |
Declares the interface ID (IID) of this interface. More... | |
A default allocator implementation based on global new and delete.
This implementation realizes the singleton pattern. An instance of the default allocator can be obtained through the static inline method mi::base::Default_allocator::get_instance().
#include <mi/base/default_allocator.h>
|
inlinevirtual |
Releases the given memory block.
Implements mi::base::IAllocator::free through a global operator
delete
call.
memory | A memory block previously allocated by a call to malloc(). If memory is NULL , no operation is performed. |
Implements mi::base::IAllocator.
|
inlinestatic |
Returns the single instance of the default allocator.
|
inlinevirtual |
Allocates a memory block of the given size.
Implements mi::base::IAllocator::malloc through a global non-throwing operator
new
call.
size | The requested size of memory in bytes. It may be zero. |
Implements mi::base::IAllocator.