Deluge Firmware 1.3.0
Build date: 2026.10.29
Loading...
Searching...
No Matches
ClusterPriority Namespace Reference

Functions

constexpr Priority forAudioClip (VoicePriority voicePriority)

Variables

constexpr Priority kSampleStart = 0xFFFFFFFD
constexpr Priority kSpeculative = 0xFFFFFFFE
constexpr Priority kRetryAfterCardError = 0xFFFFFFFF

Detailed Description

Priorities for loading Clusters. Lower numbers load first. From first to last:

  • AudioClips: forAudioClip(), which puts each one ahead of every Voice of the same VoicePriority.
  • Voices: Voice::getPriorityRating(), which stays at or below 0xFEFFFFFF.
  • The first Clusters of each Sample, so it can start instantly. LoadSongUI waits for these.
  • Speculative loads that nothing's waiting on yet, like prefetches and waveform drawing.
  • Retrying a load that failed, presumably because the card's gone.

Function Documentation

◆ forAudioClip()

Priority ClusterPriority::forAudioClip ( VoicePriority voicePriority)
constexpr

Voice::getPriorityRating() puts the VoicePriority in the top two bits, with at least one active Voice counted below them, so leaving the rest zero puts the AudioClip ahead of all Voices of that VoicePriority.