Marsyas  0.6.0-alpha
/usr/src/RPM/BUILD/marsyas-0.6.0/src/marsyas/marsystems/PhiSEMFilter.h
Go to the documentation of this file.
00001 #ifndef MARSYAS_PHISEMFILTER_H
00002 #define MARSYAS_PHISEMFILTER_H
00003 
00004 #include <marsyas/system/MarSystem.h>
00005 
00006 namespace Marsyas
00007 {
00008 
00009 typedef struct {
00010   mrs_real zero;
00011   mrs_real one;
00012 } mrs_realpair;
00013 
00014 class PhiSEMFilter: public MarSystem
00015 {
00016 private:
00017   MarControlPtr numFilters_;
00018   realvec resVec_;
00019   realvec freqVec_;
00020   mrs_realpair* coeffs_;
00021   mrs_realpair* output_;
00022 
00023   void addControls();
00024   void myUpdate(MarControlPtr sender);
00025 
00026 public:
00027   PhiSEMFilter(std::string name);
00028   ~PhiSEMFilter();
00029   MarSystem* clone() const;
00030   void myProcess(realvec& in, realvec& out);
00031 
00032 };
00033 
00034 }//namespace Marsyas
00035 
00036 #endif /* !MARSYAS_PHISEMFILTER_H */