Blender V5.0
memory_cache.cc File Reference
#include <atomic>
#include <optional>
#include "BLI_concurrent_map.hh"
#include "BLI_memory_cache.hh"
#include "BLI_memory_counter.hh"
#include "BLI_mutex.hh"

Go to the source code of this file.

Classes

struct  blender::memory_cache::StoredValue
struct  blender::memory_cache::Cache

Namespaces

namespace  blender
namespace  blender::memory_cache

Typedefs

using blender::memory_cache::CacheMap = ConcurrentMap<std::reference_wrapper<const GenericKey>, StoredValue>

Functions

static Cacheblender::memory_cache::get_cache ()
static void blender::memory_cache::try_enforce_limit ()
static void blender::memory_cache::set_new_logical_time (const StoredValue &stored_value, const int64_t new_time)
std::shared_ptr< CachedValueblender::memory_cache::get_base (const GenericKey &key, FunctionRef< std::unique_ptr< CachedValue >()> compute_fn)
void blender::memory_cache::set_approximate_size_limit (int64_t limit_in_bytes)
void blender::memory_cache::clear ()
void blender::memory_cache::remove_if (const FunctionRef< bool(const GenericKey &)> predicate)