22#ifndef _SPECTRUMLISTCACHE_HPP_
23#define _SPECTRUMLISTCACHE_HPP_
46 MemoryMRUCacheMode cacheMode,
an MRU cache for SpectrumPtrs or ChromatogramPtrs
adds a level of flexible MRU caching to a SpectrumList processor chain
virtual SpectrumPtr spectrum(size_t index, bool getBinaryData=false) const
returns the requested spectrum which may or may not be cached depending on the current cache mode
SpectrumListCache & operator=(SpectrumListCache &)
CacheType & spectrumCache()
returns a reference to the cache, to enable clearing it or changing the mode
const CacheType & spectrumCache() const
returns a const-reference to the cache
SpectrumListCache(SpectrumListCache &)
MemoryMRUCache< CacheEntry, BOOST_MULTI_INDEX_MEMBER(CacheEntry, size_t, index) > CacheType
SpectrumListCache(const SpectrumListPtr &inner, MemoryMRUCacheMode cacheMode, size_t cacheSize)
Inheritable pass-through implementation for wrapping a SpectrumList.
boost::shared_ptr< SpectrumList > SpectrumListPtr
boost::shared_ptr< Spectrum > SpectrumPtr
a cache mapping spectrum indices to SpectrumPtrs
CacheEntry(size_t i, SpectrumPtr s)