JUCE: AudioThumbnailCache Class Reference

JUCE

Public Member Functions | Protected Member Functions | List of all members
AudioThumbnailCache Class Reference

An instance of this class is used to manage multiple AudioThumbnail objects. More...

## Public Member Functions
| AudioThumbnailCache (int maxNumThumbsToStore)
| Creates a cache object. More...
virtual | ~AudioThumbnailCache ()
| Destructor. More...
void | clear ()
| Clears out any stored thumbnails. More...
bool | loadThumb (AudioThumbnailBase &thumb, int64 hashCode)
| Reloads the specified thumb if this cache contains the appropriate stored data. More...
void | storeThumb (const AudioThumbnailBase &thumb, int64 hashCode)
| Stores the cachable data from the specified thumb in this cache. More...
void | removeThumb (int64 hashCode)
| Tells the cache to forget about the thumb with the given hashcode. More...
bool | readFromStream (InputStream &source)
| Attempts to re-load a saved cache of thumbnails from a stream. More...
void | writeToStream (OutputStream &stream)
| Writes all currently-loaded cache data to a stream. More...
TimeSliceThread & | getTimeSliceThread () noexcept
| Returns the thread that client thumbnails can use. More...

## Protected Member Functions
virtual void | saveNewlyFinishedThumbnail (const AudioThumbnailBase &, int64 hashCode)
| This can be overridden to provide a custom callback for saving thumbnails once they have finished being loaded. More...
virtual bool | loadNewThumb (AudioThumbnailBase &, int64 hashCode)
| This can be overridden to provide a custom callback for loading thumbnails from pre-saved files to save the cache the trouble of having to create them. More...

## Detailed Description

An instance of this class is used to manage multiple AudioThumbnail objects.

The cache runs a single background thread that is shared by all the thumbnails that need it, and it maintains a set of low-res previews in memory, to avoid having to re-scan audio files too often.

See also
  AudioThumbnail

## Constructor & Destructor Documentation

## ◆ AudioThumbnailCache()

AudioThumbnailCache::AudioThumbnailCache | ( | int | maxNumThumbsToStore | ) |
| explicit

Creates a cache object.

The maxNumThumbsToStore parameter lets you specify how many previews should be kept in memory at once.

## ◆ ~AudioThumbnailCache()

virtual AudioThumbnailCache::~AudioThumbnailCache | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ clear()

void AudioThumbnailCache::clear | ( |  | ) |

Clears out any stored thumbnails.

## ◆ loadThumb()

bool AudioThumbnailCache::loadThumb | ( | AudioThumbnailBase & | thumb,
|  | int64 | hashCode
| ) |  |

Reloads the specified thumb if this cache contains the appropriate stored data.

This is called automatically by the AudioThumbnail class, so you shouldn't normally need to call it directly.

## ◆ storeThumb()

void AudioThumbnailCache::storeThumb | ( | const AudioThumbnailBase & | thumb,
|  | int64 | hashCode
| ) |  |

Stores the cachable data from the specified thumb in this cache.

This is called automatically by the AudioThumbnail class, so you shouldn't normally need to call it directly.

## ◆ removeThumb()

void AudioThumbnailCache::removeThumb | ( | int64 | hashCode | ) |

Tells the cache to forget about the thumb with the given hashcode.

## ◆ readFromStream()

bool AudioThumbnailCache::readFromStream | ( | InputStream & | source | ) |

Attempts to re-load a saved cache of thumbnails from a stream.

The cache data must have been written by the writeToStream() method. This will replace all currently-loaded thumbnails with the new data.

## ◆ writeToStream()

void AudioThumbnailCache::writeToStream | ( | OutputStream & | stream | ) |

Writes all currently-loaded cache data to a stream.

The resulting data can be re-loaded with readFromStream().

## ◆ getTimeSliceThread()

TimeSliceThread& AudioThumbnailCache::getTimeSliceThread | ( |  | ) |
| noexcept

Returns the thread that client thumbnails can use.

## ◆ saveNewlyFinishedThumbnail()

virtual void AudioThumbnailCache::saveNewlyFinishedThumbnail | ( | const AudioThumbnailBase & | ,
|  | int64 | hashCode
| ) |  |
| protectedvirtual

This can be overridden to provide a custom callback for saving thumbnails once they have finished being loaded.

## ◆ loadNewThumb()

virtual bool AudioThumbnailCache::loadNewThumb | ( | AudioThumbnailBase & | ,
|  | int64 | hashCode
| ) |  |
| protectedvirtual

This can be overridden to provide a custom callback for loading thumbnails from pre-saved files to save the cache the trouble of having to create them.

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

- juce_AudioThumbnailCache.h