#ifndef _WINDOWS_FUNC_HH_75238409574302950 #define _WINDOWS_FUNC_HH_75238409574302950 #include "const.h" #define BESSELI_K_LENGTH 10 // ±´Èû¶ûº¯ÊýÕ¹¿ªÏîÊý class Windows { private: /** * @brief Áã½×µÚÒ»ÀàÐÞÕý±´Èû¶ûº¯Êý I0(x) ʵÏÖ * @param x ×Ô±äÁ¿ * @param n_terms ¼¶ÊýÕ¹¿ªÏîÊý * @return I0(x) µÄ½üËÆÖµ */ double besseli(double x, int n_terms = BESSELI_K_LENGTH); public: void RectangleWin(double* w, int n); void TriangularWin(double* w, int n); void HannWin(double* w, int n); void HammingWin(double* w, int n); void KaiserWin(double* w, int n, double beta = 5.65); void BlackManWin(double* w, int n); }; #endif