59            AXFrameCallback     *callback;  
 
 
   65        static AxManager &GetInstance();
 
   72        OutputMode GetOutputMode();
 
   73        void const *GetZeroBufferAddress();
 
   74        bool CheckInit() { 
return mInitialized; }
 
   75        f32 GetOutputVolume() 
const;
 
   76        FxBase::LinkList &GetEffectList(AuxBus bus)
 
   78            NW4RAssertHeaderClampedLValue_Line(173, bus, AUX_A, AUX_BUS_NUM);
 
   84            return sBiquadFilterCallbackTable[
static_cast<u8
>(index)];
 
   87        void SetOutputMode(OutputMode mode);
 
   88        void SetMainOutVolume(f32 volume, 
int frames);
 
   89        void SetBiquadFilterCallback(
int type,
 
   90                                     BiquadFilterCallback 
const *callback);
 
   92        void RegisterCallback(CallbackListNode *node,
 
   93                              AXFrameCallback *callback);
 
   94        void UnregisterCallback(CallbackListNode *node);
 
   96        bool AppendEffect(AuxBus bus, FxBase *pFx);
 
   97        void ClearEffect(AuxBus bus, 
int frame);
 
   98        void ShutdownEffect(AuxBus bus);
 
  100        f32 GetMasterVolume()
 const {
 
  101            return mMasterVolume.GetValue();
 
  103        void SetMasterVolume(f32 volume, 
int frame);
 
  106        bool IsResetReady()
 const {
 
  107            return mResetReadyCounter == 0;
 
  110        AxVoice::SrcType GetSrcType()
 const {
 
  119        static void AxCallbackFunc();
 
  120        static void AuxCallbackFunc(
void* pChans, 
void* pContext);
 
  121        static void AiDmaCallbackFunc();
 
  125        static u8 
const AUX_CALLBACK_WAIT_FRAME = 6;
 
  126        static u16 
const AUX_RETURN_VOLUME_MAX = AX_MAX_VOLUME;
 
  127        static int const FX_SAMPLE_RATE = 32000;
 
  128        static SampleFormat 
const FX_SAMPLE_FORMAT = SAMPLE_FORMAT_PCM_S32;
 
  129        static int const FX_BUFFER_SIZE = 0x180;
 
  130        static int const ZERO_BUFFER_SIZE = 256;
 
  131        static int const SAMPLES_PAR_AUDIO_FRAME;
 
  132        static int const AUDIO_FRAME_INTERVAL;
 
  134        static byte_t sZeroBuffer[ZERO_BUFFER_SIZE];
 
  135        static BiquadFilterCallback 
const *sBiquadFilterCallbackTable[128];
 
  136        static BiquadFilterLpf sBiquadFilterLpf;
 
  137        static BiquadFilterHpf sBiquadFilterHpf;
 
  138        static BiquadFilterBpf512 sBiquadFilterBpf512;
 
  139        static BiquadFilterBpf1024 sBiquadFilterBpf1024;
 
  140        static BiquadFilterBpf2048 sBiquadFilterBpf2048;
 
  144        OutputMode                  mOutputMode;                            
 
  145        void                        *mZeroBufferAddress;                    
 
  146        CallbackListNode::LinkList  mCallbackList;                          
 
  147        AXFrameCallback             *mNextAxRegisterCallback;               
 
  149        bool                        mUpdateVoicePrioFlag;                   
 
  151        MoveValue<f32, int>         mMasterVolume;                          
 
  152        MoveValue<f32, int>         mMainOutVolume;                         
 
  153        MoveValue<f32, int>         mVolumeForReset;                        
 
  154        AIDMACallback               mOldAidCallback;                        
 
  155        volatile s32                mResetReadyCounter;                     
 
  156        MoveValue<f32, int>         mAuxFadeVolume[AUX_BUS_NUM];            
 
  157        MoveValue<f32, int>         mAuxUserVolume[AUX_BUS_NUM];            
 
  158        FxBase::LinkList            mFxList[AUX_BUS_NUM];                   
 
  159        AXAuxCallback               mAuxCallback[AUX_BUS_NUM];              
 
  160        void                        *mAuxCallbackContext[AUX_BUS_NUM];      
 
  161        u8                          mAuxCallbackWaitCounter[AUX_BUS_NUM];   
 
  163        ulong                           mEffectProcessTick[AUX_BUS_NUM];        
 
  164        AxVoice::SrcType            mSrcType;