示例#1
0
static void kaiser(int nf, float *w, int n, int ieo, double beta)
{

/*
   nf = filter length in samples
    w = window array of size n
    n = filter half length=(nf+1)/2
  ieo = even odd indicator--ieo=0 if nf even
 beta = parameter of kaiser window
*/

    double  bes, xind, xi;
    int     i;

    bes = ino(beta);
    xind = (double) ((nf - 1) * (nf - 1));

    for (i = 0; i < n; i++) {
      xi = (double) i;
      if (ieo == 0)
        xi += 0.5;
      xi = 4.0 * xi * xi;
      xi = sqrt(1.0 - (double) (xi / xind));
      w[i] = (float) (ino(beta * xi) / bes);
    }
}
示例#2
0
文件: filter.c 项目: xwizard/kde1
/* Kaiser Window (symetric) */
static void kaiser(float *w,int n,float beta)
{
    float xind, xi;
    int i;

    xind = (2*n - 1) * (2*n - 1);
    for (i =0; i<n ; i++)
    {
        xi = i + 0.5;
        w[i] = ino((float)(beta * sqrt((double)(1. - 4 * xi * xi / xind))))
               / ino((float)beta);
    }
}
示例#3
0
void detachInterruptX(int x,int ir)
{
  ino(x);
  detachInterrupt(ir);

  return;
}
示例#4
0
void attachInterruptX(int x,int ir,void(*func)(),int mode)
{
  ino(x);
  attachInterrupt(ir,func,mode);

  return;
}
示例#5
0
void serial::writeX(int z,char *p) 
{
  ino(z);
  println(p);
  return;
}
示例#6
0
void serial::printlnX(int z) 
{
  ino(z);
  println();
  return;
}
示例#7
0
void serial::printlnX(int z, String s) 
{
  ino(z);
  println(s);
  return;
}
示例#8
0
void serial::printlnX(int z,const char *p) 
{
  ino(z);
  println(p);
  return;
}
示例#9
0
void serial::printlnX(int z,int x) 
{
  ino(z);
  println(x);
  return;
}
示例#10
0
void serial::printX(int z,int x, int base) 
{
  ino(z);
  print(x,base);
  return;
}
示例#11
0
void serial::flushX(int z) 
{
  ino(z);
  flush();
}
示例#12
0
int serial::peekX(int z) 
{
  ino(z);
  return(peek());
}
示例#13
0
int serial::availableX(int z) 
{
  ino(z);
  return(available());
}
示例#14
0
void serial::endX(int z) 
{
  ino(z);
  end();
  return;
}
示例#15
0
void serial::beginX(int z,int baudRate) 
{
  ino(z);
  begin(baudRate);
  return;
}