/* * audioproc.h * * Created on: 2021Äê11ÔÂ2ÈÕ * Author: graydon */ #ifndef _AUDIOPROC_HH__ #define _AUDIOPROC_HH__ #include #include "typedefs.h" #include "config.h" #include "IModule.h" #include "frames.h" #include "ModuleExport.h" #include "protocol.h" #include //#include "convert.h" #include "ParamCtrl.h" class ToB { private : std::vector mList;//Ä£¿éÁбí std::vector mModuleIndex; Frames* frames; u8 dsp_index; ubool dual_dsp; u16 mLevelNum; ubool processed; ubool pad; u16 mModuleNum; static ToB* tob; //static std::map ProcConvert; static std::map ProcParamCtrl; IModule* CreateBaseModule( u32 moduleType, u16 tag, u16 rxNum, u16 txNum); public: ToB(ubool dualDsp, u32 dspIndex); ~ToB(); static ToB* GetInstance(){ return tob; } uvoid SetMute(ubool mute); ErrStatus toClear(); ErrStatus toProc(); ErrStatus toCtrl(u32 mID, u32 pID, s16* val, u32 num); ErrStatus toCtrl(u32 mID, u32 pID, s16* val); ErrStatus toCtrl(const u8* bin , u32 nbytes); ErrStatus CreateModule(const u8* bin, u32 nbytes); ErrStatus CreateModule(const u8* bin, u32 nbytes, const u8 *scene_bin); u32 GetLevels(s16 * buffer); u32 GetRuntime(u16 * buffer); uvoid SetModuleParam(u32 proc_type, u32 mID, void *handle); }; #endif