Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
nw4hbm::snd::detail::AxManager Class Reference

#include <AxManager.h>

+ Collaboration diagram for nw4hbm::snd::detail::AxManager:

Classes

struct  CallbackListNode
 

Public Types

typedef struct nw4hbm::snd::detail::AxManager::CallbackListNode CallbackListNode
 
typedef ut::LinkList< CallbackListNode, offsetof(CallbackListNode, link)> CallbackList
 

Public Member Functions

void Init ()
 
void Shutdown ()
 
void Update ()
 
bool CheckInit ()
 
bool IsDiskError () const
 
bool IsHomeButtonMenu () const
 
bool IsResetReady () const
 
f32 GetOutputVolume () const
 
void * GetZeroBufferAddress ()
 
void RegisterCallback (CallbackListNode *node, AXCallback callback)
 
void UnregisterCallback (CallbackListNode *node)
 
void SetOutputMode (OutputMode mode)
 
OutputMode GetOutputMode ()
 
void UpdateAllVoicesPriority ()
 
void UpdateAllVoices ()
 
void UpdateAllVoicesSync (u32 syncFlag)
 
f32 GetMasterVolume () const
 
void SetMasterVolume (f32 volume, int frame)
 
bool AppendEffect (AuxBus bus, FxBase *fx)
 
void ClearEffect (AuxBus bus, int frame)
 
void ShutdownEffect (AuxBus bus)
 
FxListGetEffectList (AuxBus bus)
 
void AppendVoiceList (AxVoice *voice)
 
void RemoveVoiceList (AxVoice *voice)
 
AxVoiceAllocVoice (int channels, int voices, int priority, AxVoice::AxVoiceCallback callback, void *callbackData)
 
void FreeVoice (AxVoice *voice)
 
void ChangeVoicePriority (AxVoice *voice)
 
void LockUpdateVoicePriority ()
 
void UnlockUpdateVoicePriority ()
 
int DropLowestPriorityVoice (int priority)
 
AxVoiceListGetVoiceList ()
 

Static Public Member Functions

static AxManagerGetInstance ()
 

Private Member Functions

 AxManager ()
 

Static Private Member Functions

static void AxCallbackFunc ()
 
static void AuxCallbackFunc (void *chans, void *context)
 

Private Attributes

OutputMode mOutputMode
 
void * mZeroBufferAddress
 
CallbackList mCallbackList
 
AxVoiceList mPrioVoiceList
 
AxVoiceList mFreeVoiceList
 
AxVoice mVoices [AX_MAX_VOICES]
 
AXCallback mNextAxRegisterCallback
 
bool mInitialized
 
bool mUpdateVoicePrioFlag
 
bool mHomeButtonMuteFlag
 
bool mDiskErrorFlag
 
MoveValue< f32, int > mHomeButtonMenuVolume
 
MoveValue< f32, int > mMasterVolume
 
MoveValue< f32, int > mVolumeForReset
 
AIDCallback mOldAidCallback
 
vs32 mResetReadyCounter
 
MoveValue< f32, int > mAuxFadeVolume [AUX_BUS_NUM]
 
MoveValue< f32, int > mAuxUserVolume [AUX_BUS_NUM]
 
FxList mFxList [AUX_BUS_NUM]
 
AXCallback mAuxCallback [AUX_BUS_NUM]
 
void * mAuxCallbackContext [AUX_BUS_NUM]
 
u8 mAuxCallbackWaitCounter [AUX_BUS_NUM]
 

Static Private Attributes

static const u8 AUX_CALLBACK_WAIT_FRAME = 6
 
static const int FX_SAMPLE_RATE = AX_SAMPLE_RATE
 
static const SampleFormat FX_SAMPLE_FORMAT = SAMPLE_FORMAT_PCM_S32
 
static const int FX_BUFFER_SIZE = AX_FRAME_SIZE
 
static const int ZERO_BUFFER_SIZE = 256
 
static u8 sZeroBuffer [ZERO_BUFFER_SIZE]
 

Member Typedef Documentation

◆ CallbackList

◆ CallbackListNode

struct nw4hbm::snd::detail::AxManager::CallbackListNode nw4hbm::snd::detail::AxManager::CallbackListNode

Constructor & Destructor Documentation

◆ AxManager()

nw4hbm::snd::detail::AxManager::AxManager ( )
private

Member Function Documentation

◆ AllocVoice()

AxVoice * nw4hbm::snd::detail::AxManager::AllocVoice ( int channels,
int voices,
int priority,
AxVoice::AxVoiceCallback callback,
void * callbackData )

◆ AppendEffect()

bool nw4hbm::snd::detail::AxManager::AppendEffect ( AuxBus bus,
FxBase * fx )

◆ AppendVoiceList()

void nw4hbm::snd::detail::AxManager::AppendVoiceList ( AxVoice * voice)

◆ AuxCallbackFunc()

static void nw4hbm::snd::detail::AxManager::AuxCallbackFunc ( void * chans,
void * context )
staticprivate

◆ AxCallbackFunc()

static void nw4hbm::snd::detail::AxManager::AxCallbackFunc ( )
staticprivate

◆ ChangeVoicePriority()

void nw4hbm::snd::detail::AxManager::ChangeVoicePriority ( AxVoice * voice)

◆ CheckInit()

bool nw4hbm::snd::detail::AxManager::CheckInit ( )
inline

◆ ClearEffect()

void nw4hbm::snd::detail::AxManager::ClearEffect ( AuxBus bus,
int frame )

◆ DropLowestPriorityVoice()

int nw4hbm::snd::detail::AxManager::DropLowestPriorityVoice ( int priority)

◆ FreeVoice()

void nw4hbm::snd::detail::AxManager::FreeVoice ( AxVoice * voice)

◆ GetEffectList()

FxList & nw4hbm::snd::detail::AxManager::GetEffectList ( AuxBus bus)
inline

◆ GetInstance()

static AxManager & nw4hbm::snd::detail::AxManager::GetInstance ( )
static

◆ GetMasterVolume()

f32 nw4hbm::snd::detail::AxManager::GetMasterVolume ( ) const
inline

◆ GetOutputMode()

OutputMode nw4hbm::snd::detail::AxManager::GetOutputMode ( )

◆ GetOutputVolume()

f32 nw4hbm::snd::detail::AxManager::GetOutputVolume ( ) const

◆ GetVoiceList()

AxVoiceList & nw4hbm::snd::detail::AxManager::GetVoiceList ( )
inline

◆ GetZeroBufferAddress()

void * nw4hbm::snd::detail::AxManager::GetZeroBufferAddress ( )

◆ Init()

void nw4hbm::snd::detail::AxManager::Init ( )

◆ IsDiskError()

bool nw4hbm::snd::detail::AxManager::IsDiskError ( ) const
inline

◆ IsHomeButtonMenu()

bool nw4hbm::snd::detail::AxManager::IsHomeButtonMenu ( ) const
inline

◆ IsResetReady()

bool nw4hbm::snd::detail::AxManager::IsResetReady ( ) const
inline

◆ LockUpdateVoicePriority()

void nw4hbm::snd::detail::AxManager::LockUpdateVoicePriority ( )

◆ RegisterCallback()

void nw4hbm::snd::detail::AxManager::RegisterCallback ( CallbackListNode * node,
AXCallback callback )

◆ RemoveVoiceList()

void nw4hbm::snd::detail::AxManager::RemoveVoiceList ( AxVoice * voice)

◆ SetMasterVolume()

void nw4hbm::snd::detail::AxManager::SetMasterVolume ( f32 volume,
int frame )

◆ SetOutputMode()

void nw4hbm::snd::detail::AxManager::SetOutputMode ( OutputMode mode)

◆ Shutdown()

void nw4hbm::snd::detail::AxManager::Shutdown ( )

◆ ShutdownEffect()

void nw4hbm::snd::detail::AxManager::ShutdownEffect ( AuxBus bus)

◆ UnlockUpdateVoicePriority()

void nw4hbm::snd::detail::AxManager::UnlockUpdateVoicePriority ( )

◆ UnregisterCallback()

void nw4hbm::snd::detail::AxManager::UnregisterCallback ( CallbackListNode * node)

◆ Update()

void nw4hbm::snd::detail::AxManager::Update ( )

◆ UpdateAllVoices()

void nw4hbm::snd::detail::AxManager::UpdateAllVoices ( )

◆ UpdateAllVoicesPriority()

void nw4hbm::snd::detail::AxManager::UpdateAllVoicesPriority ( )

◆ UpdateAllVoicesSync()

void nw4hbm::snd::detail::AxManager::UpdateAllVoicesSync ( u32 syncFlag)

Member Data Documentation

◆ AUX_CALLBACK_WAIT_FRAME

const u8 nw4hbm::snd::detail::AxManager::AUX_CALLBACK_WAIT_FRAME = 6
staticprivate

◆ FX_BUFFER_SIZE

const int nw4hbm::snd::detail::AxManager::FX_BUFFER_SIZE = AX_FRAME_SIZE
staticprivate

◆ FX_SAMPLE_FORMAT

const SampleFormat nw4hbm::snd::detail::AxManager::FX_SAMPLE_FORMAT = SAMPLE_FORMAT_PCM_S32
staticprivate

◆ FX_SAMPLE_RATE

const int nw4hbm::snd::detail::AxManager::FX_SAMPLE_RATE = AX_SAMPLE_RATE
staticprivate

◆ mAuxCallback

AXCallback nw4hbm::snd::detail::AxManager::mAuxCallback[AUX_BUS_NUM]
private

◆ mAuxCallbackContext

void* nw4hbm::snd::detail::AxManager::mAuxCallbackContext[AUX_BUS_NUM]
private

◆ mAuxCallbackWaitCounter

u8 nw4hbm::snd::detail::AxManager::mAuxCallbackWaitCounter[AUX_BUS_NUM]
private

◆ mAuxFadeVolume

MoveValue<f32, int> nw4hbm::snd::detail::AxManager::mAuxFadeVolume[AUX_BUS_NUM]
private

◆ mAuxUserVolume

MoveValue<f32, int> nw4hbm::snd::detail::AxManager::mAuxUserVolume[AUX_BUS_NUM]
private

◆ mCallbackList

CallbackList nw4hbm::snd::detail::AxManager::mCallbackList
private

◆ mDiskErrorFlag

bool nw4hbm::snd::detail::AxManager::mDiskErrorFlag
private

◆ mFreeVoiceList

AxVoiceList nw4hbm::snd::detail::AxManager::mFreeVoiceList
private

◆ mFxList

FxList nw4hbm::snd::detail::AxManager::mFxList[AUX_BUS_NUM]
private

◆ mHomeButtonMenuVolume

MoveValue<f32, int> nw4hbm::snd::detail::AxManager::mHomeButtonMenuVolume
private

◆ mHomeButtonMuteFlag

bool nw4hbm::snd::detail::AxManager::mHomeButtonMuteFlag
private

◆ mInitialized

bool nw4hbm::snd::detail::AxManager::mInitialized
private

◆ mMasterVolume

MoveValue<f32, int> nw4hbm::snd::detail::AxManager::mMasterVolume
private

◆ mNextAxRegisterCallback

AXCallback nw4hbm::snd::detail::AxManager::mNextAxRegisterCallback
private

◆ mOldAidCallback

AIDCallback nw4hbm::snd::detail::AxManager::mOldAidCallback
private

◆ mOutputMode

OutputMode nw4hbm::snd::detail::AxManager::mOutputMode
private

◆ mPrioVoiceList

AxVoiceList nw4hbm::snd::detail::AxManager::mPrioVoiceList
private

◆ mResetReadyCounter

vs32 nw4hbm::snd::detail::AxManager::mResetReadyCounter
private

◆ mUpdateVoicePrioFlag

bool nw4hbm::snd::detail::AxManager::mUpdateVoicePrioFlag
private

◆ mVoices

AxVoice nw4hbm::snd::detail::AxManager::mVoices[AX_MAX_VOICES]
private

◆ mVolumeForReset

MoveValue<f32, int> nw4hbm::snd::detail::AxManager::mVolumeForReset
private

◆ mZeroBufferAddress

void* nw4hbm::snd::detail::AxManager::mZeroBufferAddress
private

◆ sZeroBuffer

u8 nw4hbm::snd::detail::AxManager::sZeroBuffer[ZERO_BUFFER_SIZE]
staticprivate

◆ ZERO_BUFFER_SIZE

const int nw4hbm::snd::detail::AxManager::ZERO_BUFFER_SIZE = 256
staticprivate

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