AudioThumbnailCache Class Reference
juce_audio_utils » gui

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
| ) |  |

protected virtual

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
| ) |  |

protected virtual

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