Base API nvidia_logo_transpbg.gif Up
iallocator.h
Go to the documentation of this file.
1/***************************************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 **************************************************************************************************/
8
9#ifndef MI_BASE_IALLOCATOR_H
10#define MI_BASE_IALLOCATOR_H
11
12#include <mi/base/types.h>
13#include <mi/base/iinterface.h>
15
16namespace mi
17{
18
19namespace base
20{
21
47class IAllocator : public
48 Interface_declare<0xa1836db8,0x6f63,0x4079,0x82,0x82,0xb3,0x5d,0x17,0x36,0x96,0xef>
49{
50public:
72 virtual void* malloc(Size size) = 0;
73
82 virtual void free(void* memory) = 0;
83};
84
85 // end group mi_base_iallocator
87
88} // namespace base
89} // namespace mi
90
91#endif // MI_BASE_IALLOCATOR_H
The IAllocator interface class supports allocating and releasing memory dynamically.
Definition: iallocator.h:49
Mixin class template for deriving new interface declarations.
Definition: interface_declare.h:43
virtual void * malloc(Size size)=0
Allocates a memory block of the given size.
virtual void free(void *memory)=0
Releases the given memory block.
Uint64 Size
Unsigned integral type that is large enough to hold the size of all types.
Definition: types.h:112
The basic extensible interface.
Mixin class template for deriving new interface declarations.
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH.
Definition: base.h:34
Basic types.