22        static const int VOICE_MAX = AX_VOICE_MAX;
 
   23        static const int WORK_SIZE_MAX = VOICE_MAX * 
sizeof(
Voice);
 
   27        static VoiceManager &GetInstance();
 
   30        void Setup(
void *mem, ulong memSize);
 
   33        Voice::LinkList 
const &GetVoiceList()
 const { 
return mPrioVoiceList; }
 
   34        ulong GetRequiredMemSize(
int voiceCount);
 
   36        Voice *AllocVoice(
int voiceChannelCount, 
int voiceOutCount,
 
   37                          int priority, Voice::Callback *callback,
 
   39        void FreeVoice(
Voice *voice);
 
   43        void ChangeVoicePriority(
Voice *voice);
 
   45        void UpdateAllVoices();
 
   46        void UpdateAllVoicesSync(ulong syncFlag);
 
   48        void NotifyVoiceUpdate();
 
   55        void AppendVoiceList(
Voice *voice);
 
   56        void RemoveVoiceList(
Voice *voice);
 
   58        void UpdateEachVoicePriority(Voice::LinkList::Iterator 
const &beginItr,
 
   59                                     Voice::LinkList::Iterator 
const &endItr);
 
   61        int DropLowestPriorityVoice(
int priority);
 
   67        Voice::LinkList mPrioVoiceList; 
 
   68        Voice::LinkList mFreeVoiceList;