Marsyas  0.2
/home/gperciva/src/marsyas/src/marsyas/PeakEnhancer.h
00001 
00019 #ifndef MARSYAS_PeakEnhancer_H
00020 #define MARSYAS_PeakEnhancer_H
00021 
00022 #define DEFAULT_ITNUM 1
00023 
00024 #include "MarSystem.h"
00025 #include "HalfWaveRectifier.h"
00026 #include "Filter.h"
00027 
00028 namespace Marsyas
00029 {
00038 class PeakEnhancer: public MarSystem
00039 {
00040 
00041   private: 
00042     //Add specific controls needed by this MarSystem.
00043     void addControls();
00044     
00045     MarControlPtr ctrl_itnum_;
00046 
00047     MarSystem* rect_; 
00048     MarSystem* lowpass_;
00049   
00050     //mrs_string resaModeOld_;
00051     void myUpdate(MarControlPtr sender);
00052 
00053 public:
00054     PeakEnhancer(std::string name);
00055     PeakEnhancer(const PeakEnhancer& a);
00056     ~PeakEnhancer();
00057     MarSystem* clone() const;  
00058 
00059 
00060     void myProcess(realvec& in, realvec& out);
00061 
00062   
00063 };
00064 }
00065     
00066 #endif
00067 
00068