|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
Cache images keyed by immutable allocation properties. More...
#include <TextureLoom.hpp>
Collaboration diagram for MayaFlux::Portal::Graphics::ImageCacheSet:Classes | |
| struct | Entry |
Public Member Functions | |
| std::shared_ptr< Core::VKImage > | acquire (TextureLoom &loom, const ImageKey &key) |
| ImageCacheSet (const ImageCacheSet &)=delete | |
| ImageCacheSet (ImageCacheSet &&) noexcept=default | |
| ImageCacheSet (size_t byte_budget) | |
| ImageCacheSet & | operator= (const ImageCacheSet &)=delete |
| ImageCacheSet & | operator= (ImageCacheSet &&) noexcept=default |
| ~ImageCacheSet ()=default | |
Private Attributes | |
| bool | m_budget_warned {} |
| size_t | m_byte_budget |
| size_t | m_cached_bytes {} |
| std::unordered_map< ImageKey, Entry, ImageKeyHash > | m_entries |
| Entry * | m_last_entry {} |
| std::optional< ImageKey > | m_last_key |
Cache images keyed by immutable allocation properties.
The byte budget is a warning threshold. Entries remain cached after the threshold is exceeded because TextureLoom retains created images until shutdown and eviction would recreate them on a later request.
Definition at line 608 of file TextureLoom.hpp.