Class ISubBlockCache#
Defined in File libCZI_Compositor.h
Inheritance Relationships#
Base Types#
public libCZI::ISubBlockCacheStatistics
(Class ISubBlockCacheStatistics)public libCZI::ISubBlockCacheControl
(Class ISubBlockCacheControl)public libCZI::ISubBlockCacheOperation
(Class ISubBlockCacheOperation)
Class Documentation#
-
class ISubBlockCache : public libCZI::ISubBlockCacheStatistics, public libCZI::ISubBlockCacheControl, public libCZI::ISubBlockCacheOperation#
Interface for a caching component (which can be used with the compositors). The intended use is as follows:
Whenever the bitmap corresponding to a subblock (c.f. ISubBlock::CreateBitmap
) is accessed, the bitmap may be added
to a cache object, where the subblock-index is the key.
Whenever a bitmap is needed (for a given subblock-index), the cache object is first queried whether it contains the bitmap. If yes, then the bitmap
returned may be used instead of executing the subblock-read-and-decode operation. In order to control the memory usage of the cache, the cache object must be pruned (i.e. subblocks are removed from the cache). Currently this means, that the Prune-method must be called manually. The cache object does not do any pruning automatically. The operations of Adding, Querying and Pruning the cache object are thread-safe.
Public Functions
-
~ISubBlockCache() override = default#
-
ISubBlockCache() = default#
-
ISubBlockCache(const ISubBlockCache&) = delete#
-
ISubBlockCache &operator=(const ISubBlockCache&) = delete#
-
ISubBlockCache(ISubBlockCache&&) noexcept = delete#
-
ISubBlockCache &operator=(ISubBlockCache&&) noexcept = delete#