00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef TRANSFER_H
00017 #define TRANSFER_H
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 typedef struct _PZNum
00028 {
00029 double dReal;
00030 double dImag;
00031 } PZNum;
00032
00033 typedef struct _ResponseStruct
00034 {
00035 double dGain;
00036 int iNumPoles;
00037 int iNumZeros;
00038 PZNum *Poles;
00039 PZNum *Zeros;
00040 } ResponseStruct;
00041
00042
00043
00044 #define TR_DBG_PZG 1<<0
00045
00046 #define TR_DBG_TRS 1<<1
00047
00048 #define TR_DBG_ARS 1<<2
00049
00050
00051
00052 void response(long, double, ResponseStruct *, double *, double *);
00053 int readPZ( char *, ResponseStruct * );
00054 double ftaper(double, double, double);
00055 void taper(double *, long, long);
00056 int convertWave(double *, long, double, ResponseStruct *, ResponseStruct *,
00057 double *, int, long *, long *, double *, long, double *,
00058 double *);
00059 int respLen( ResponseStruct *, double, double *);
00060 void deMean( double *, long, double *);
00061 void cleanPZ( ResponseStruct *);
00062 void pzCancel(ResponseStruct *, double);
00063 void transferDebug( int );
00064 #endif
00065
00066
00067
00068