00001 // rdSignal.h 00002 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00003 // Copyright 2000 Realistic Dynamics, Inc. 00004 // All rights reserved. 00005 // 00006 // Please do not read, copy, distribute, or use without permission. 00007 // Contact: Frank C. Anderson, fca@RealisticDynamics.com 00008 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00009 #ifndef __rdSignal_h__ 00010 #define __rdSignal_h__ 00011 00012 00013 #include "rdTools.h" 00014 00015 00016 //============================================================================= 00017 //============================================================================= 00021 class RDTOOLS_API rdSignal 00022 { 00023 //============================================================================= 00024 // DATA 00025 //============================================================================= 00026 00027 //============================================================================= 00028 // METHODS 00029 //============================================================================= 00030 public: 00031 //-------------------------------------------------------------------------- 00032 // CONSTRUCTION 00033 //-------------------------------------------------------------------------- 00034 //rdSignal(); 00035 //virtual ~rdSignal(); 00036 00037 //-------------------------------------------------------------------------- 00038 // FILTERS 00039 //-------------------------------------------------------------------------- 00040 static int lowpassIIR(double T,double fc,int N,double *sig, 00041 double *sigf); 00042 static int lowpassFIR(int M,double T,double f,int N,double *sig, 00043 double *sigf); 00044 static int bandpass(int M,double T,double f1,double f2,int N,double *sig, 00045 double *sigf); 00046 00047 //-------------------------------------------------------------------------- 00048 // CORE MATH 00049 //-------------------------------------------------------------------------- 00050 static double sinc(double x); 00051 static double hamming(int k,int M); 00052 00053 //============================================================================= 00054 }; // END class rdSignal 00055 //============================================================================= 00056 //============================================================================= 00057 00058 #endif // __rdSignal_h__
1.3