Blender
V3.3
|
#include <MEM_CacheLimiter.h>
Public Types | |
typedef size_t(* | MEM_CacheLimiter_DataSize_Func) (void *data) |
typedef int(* | MEM_CacheLimiter_ItemPriority_Func) (void *item, int default_priority) |
typedef bool(* | MEM_CacheLimiter_ItemDestroyable_Func) (void *item) |
Public Member Functions | |
MEM_CacheLimiter (MEM_CacheLimiter_DataSize_Func data_size_func) | |
~MEM_CacheLimiter () | |
MEM_CacheLimiterHandle< T > * | insert (T *elem) |
void | unmanage (MEM_CacheLimiterHandle< T > *handle) |
size_t | get_memory_in_use () |
void | enforce_limits () |
void | touch (MEM_CacheLimiterHandle< T > *handle) |
void | set_item_priority_func (MEM_CacheLimiter_ItemPriority_Func item_priority_func) |
void | set_item_destroyable_func (MEM_CacheLimiter_ItemDestroyable_Func item_destroyable_func) |
This class defines a generic memory cache management system to limit memory usage to a fixed global maximum.
Usage example:
Definition at line 125 of file MEM_CacheLimiter.h.
typedef size_t(* MEM_CacheLimiter< T >::MEM_CacheLimiter_DataSize_Func) (void *data) |
Definition at line 127 of file MEM_CacheLimiter.h.
typedef bool(* MEM_CacheLimiter< T >::MEM_CacheLimiter_ItemDestroyable_Func) (void *item) |
Definition at line 129 of file MEM_CacheLimiter.h.
typedef int(* MEM_CacheLimiter< T >::MEM_CacheLimiter_ItemPriority_Func) (void *item, int default_priority) |
Definition at line 128 of file MEM_CacheLimiter.h.
|
inline |
Definition at line 131 of file MEM_CacheLimiter.h.
|
inline |
Definition at line 135 of file MEM_CacheLimiter.h.
|
inline |
Definition at line 174 of file MEM_CacheLimiter.h.
References MEM_CacheLimiterHandle< T >::destroy_if_possible(), MEM_CacheLimiterHandle< T >::get(), MEM_CacheLimiter< T >::get_memory_in_use(), is_disabled, max, MEM_CacheLimiter_get_maximum(), MEM_CacheLimiter_is_disabled(), MEM_get_memory_in_use, and mem_in_use.
Referenced by MEM_CacheLimiter_enforce_limits().
|
inline |
Definition at line 159 of file MEM_CacheLimiter.h.
References MEM_get_memory_in_use, and size().
Referenced by MEM_CacheLimiter< T >::enforce_limits(), and MEM_CacheLimiter_get_memory_in_use().
|
inline |
Definition at line 143 of file MEM_CacheLimiter.h.
Referenced by MEM_CacheLimiterCClass::insert().
|
inline |
Definition at line 238 of file MEM_CacheLimiter.h.
Referenced by MEM_CacheLimiter_ItemDestroyable_Func_set().
|
inline |
Definition at line 233 of file MEM_CacheLimiter.h.
Referenced by MEM_CacheLimiter_ItemPriority_Func_set().
|
inline |
Definition at line 218 of file MEM_CacheLimiter.h.
References NULL.
|
inline |
Definition at line 150 of file MEM_CacheLimiter.h.
References pos.