Grok 15.1.0
grk::SparseCache< T > Class Template Referenceabstract

#include <SparseCache.h>

Inheritance diagram for grk::SparseCache< T >:
grk::BlockCache< T, P >

Public Member Functions

 SparseCache (uint64_t maxChunkSize)
virtual ~SparseCache (void)
T * tryGet (uint64_t index)
T * get (uint64_t index)

Protected Member Functions

virtual T * create (uint64_t index)=0

Private Attributes

std::map< uint64_t, T ** > chunks
uint64_t chunkSize_
T ** currChunk_
uint64_t currChunkIndex_

Constructor & Destructor Documentation

◆ SparseCache()

template<typename T>
grk::SparseCache< T >::SparseCache ( uint64_t maxChunkSize)
inline

◆ ~SparseCache()

template<typename T>
virtual grk::SparseCache< T >::~SparseCache ( void )
inlinevirtual

References chunks, and chunkSize_.

Member Function Documentation

◆ create()

template<typename T>
virtual T * grk::SparseCache< T >::create ( uint64_t index)
protectedpure virtual

◆ get()

template<typename T>
T * grk::SparseCache< T >::get ( uint64_t index)
inline

◆ tryGet()

template<typename T>
T * grk::SparseCache< T >::tryGet ( uint64_t index)
inline

Member Data Documentation

◆ chunks

template<typename T>
std::map<uint64_t, T**> grk::SparseCache< T >::chunks
private

Referenced by get(), tryGet(), and ~SparseCache().

◆ chunkSize_

template<typename T>
uint64_t grk::SparseCache< T >::chunkSize_
private

Referenced by get(), SparseCache(), tryGet(), and ~SparseCache().

◆ currChunk_

template<typename T>
T** grk::SparseCache< T >::currChunk_
private

Referenced by get(), SparseCache(), and tryGet().

◆ currChunkIndex_

template<typename T>
uint64_t grk::SparseCache< T >::currChunkIndex_
private

Referenced by get(), SparseCache(), and tryGet().


The documentation for this class was generated from the following file: