Integrated program of 4 different kinds of application programs for processing sound signal. 4種類のサウンド信号処理を統合したプログラム.
Dependencies: F746_GUI F746_SAI_IO FrequencyResponseDrawer SD_PlayerSkeleton UIT_FFT_Real
MyAcousticEffector_MIC/ReverbUnitBase.hpp
- Committer:
- MikamiUitOpen
- Date:
- 2017-04-27
- Revision:
- 16:d60e5187fd31
- Parent:
- 14:34c356ceb8e7
File content as of revision 16:d60e5187fd31:
//-------------------------------------------------------------- // Base class for Reverb unit // 2017/04/04, Copyright (c) 2017 MIKAMI, Naoki //-------------------------------------------------------------- #ifndef REVERB_UNIT_BASE_HPP #define REVERB_UNIT_BASE_HPP #include "mbed.h" #include "Array.hpp" namespace Mikami { // Base class for reverb unit class ReverbBase { public: // Constructor ReverbBase(int delay) : ptr_(0), delay_(delay), un_(delay) { Clear(); } // Clear internal delay elements void Clear() { for (int n=0; n<delay_; n++) un_[n] = 0; } protected: float Get() { return un_[ptr_]; } float Get(int n) { int k = ptr_ + n; if (k > delay_) k -= delay_; if (k < 0) k += delay_; return un_[k]; } void Set(float x) { un_[ptr_] = x; if (++ptr_ >= delay_) ptr_ = 0; } private: int ptr_; int delay_; Array<float> un_; // for delay // disallow copy constructor and assignment operator ReverbBase(const ReverbBase&); ReverbBase& operator=(const ReverbBase&); }; } #endif // REVERB_UNIT_BASE_HPP