#include #include #include "mag_fft.h" void fftcall(istat, string, fftdat, nrec) int *istat; struct dsc$descriptor_s *string; struct MagFFTSet *fftdat; int *nrec; { int j,jj,kk; int fftcnt; char c; char newstring[100] = ""; /* Convert Fortran character string to C character string */ for (j = 0; j < string->dsc$w_length; ++j) { c = string->dsc$a_pointer[j]; /* extract Fortran string characters */ if ( c != ' ' ) strcat(newstring,&c); /* build C character string */ } /* retrieve MAG FFT records */ *istat = rd_fft(newstring,fftdat,&fftcnt); if ( *istat < 0 ) { printf("FFTCALL: No MAG FFT data"); *nrec = 0; return; } printf("Number of MAG FFT records is %d\n",fftcnt); *nrec = fftcnt; /* j = *nrec; printf("C MAG FFT values, record # %d\n",*nrec); printf("sc clock = %8d\n", fftdat[j].sctime_readout); printf(" %4x %4x %4x %4x %4x\n", fftdat[j].fft_statbits[0], fftdat[j].fft_statbits[1], fftdat[j].fft_statbits[2], fftdat[j].fft_statbits[3], fftdat[j].fft_statbits[4]); for (jj=0;jj