#ifndef FRVLINFILT
#define FRVLINFILT
#ifndef _POSIX_SOURCE
#define _POSIX_SOURCE
#endif
/*---------------------------------------------------------------------------*/
/* FrvLinFilt.h Created May 2001 Author Isidoro Ferrante */
/*---------------------------------------------------------------------------*/
#include "FrameL.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct FrvLinFilt FrvLinFilt;
struct FrvLinFilt {
/*--------------------- input data -------------*/
double * a; /* filter coefficients (see definition below) */
double * ym; /* internal coefficient */
double * b; /* filter coefficients (see definition below) */
double * xm; /* internal coefficient */
int na;
int mb;
struct FrVect *output; /* vector to hold the last data chunk */
char error[256]; /* hold error message if any */
int nCall; /* number of call for the algorithms */
char *name; /* name to be use to build linked list */
FRBOOL outputIsInput; /* if FR_YES the output vector is the input one */
FrvLinFilt *next; /* to build linked list */
};
void FrvLinFiltFree(FrvLinFilt* filter);
int FrvLinFiltProc(FrvLinFilt *filter, FrVect *vect);
int FrvLinFiltInit(FrvLinFilt* filter, FrVect *vect);
FrvLinFilt *FrvLinFiltNew(double * a, double * b, int na, int mb);
void FrvLinFiltSetIni(FrvLinFilt* filter, double * ym, double * xm);
FrvLinFilt *FrvLinFiltMult(FrvLinFilt* filter2, FrvLinFilt* filter1);
FrvLinFilt *FrvLinFiltCopy(FrvLinFilt * filter0);
FrvLinFilt *FrvLinFiltAddZP(FrvLinFilt * filter0, double fase, double modulo, int type);
void FrvLinFiltSetGain(FrvLinFilt* filter, double freq, double gain );
int FrvButtOrder(double fp,double fs,double tp,double ts,double *wc);
void FrvButtFilt(int N, double wc, double * a, double * b);
void FrvButtCell(double wc, int k, int N, double * a, double * b);
FrvLinFilt *FrvLinFiltButt( double fp, double fs, double tp, double ts, int order, double fc);
void FrvLinFiltButtLowToHigh(FrvLinFilt * filter);
#ifdef __cplusplus
}
#endif
#endif
- ROOT page - VEGA page - Class index - Top of the page This page has been automatically generated. If you have any comments or suggestions
about the page layout send a mail to
, or
contact
with any questions or problems regarding ROOT or VEGA.