Add wisdom for the FFTs done by symspec_(), wsjtx[.exe].

Also complete the wrapper code in wisdom.c.
TBD: should be possible to use fftw3f.f03 instead of the ad hoc wisdom.c.


git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@4617 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2014-11-21 15:17:22 +00:00
parent 20ded259d8
commit 021f677687
5 changed files with 22 additions and 2 deletions

View File

@ -242,7 +242,6 @@ set (wsjt_FSRCS
lib/entail.f90
lib/extract.F90
lib/geocentric.f90
lib/f77_wisdom.f90
lib/fano232.f90
lib/fchisq.f90
lib/fchisq65.f90

View File

@ -74,7 +74,9 @@ program jt9
1000 format(a40)
rewind 28
isuccess=0
call import_wisdom_from_file(isuccess,28)
wisfile=trim(data_dir)//'/jt9_wisdom.dat'
n=len_trim(wisfile)
call import_wisdom(wisfile(1:n)//char(0),isuccess)
close(28)
30 if(isuccess.ne.0) then
write(14,1010) firstline

View File

@ -1,4 +1,13 @@
void export_wisdom_(char fname[], int len)
{
int fftwf_export_wisdom_to_filename(const char *);
fname[len-1]=0;
fftwf_export_wisdom_to_filename(fname);
}
void import_wisdom_(char fname[], int *success, int len)
{
int fftwf_import_wisdom_from_filename(const char *);
fname[len-1]=0;
*success = fftwf_import_wisdom_from_filename(fname);
}

View File

@ -380,6 +380,10 @@ MainWindow::MainWindow(bool multiple, QSettings * settings, QSharedMemory *shdme
proc_jt9.start(QDir::toNativeSeparators (m_appDir) + QDir::separator () +
"jt9", jt9_args, QIODevice::ReadWrite | QIODevice::Unbuffered);
QString fname(QDir::toNativeSeparators(m_config.data_path ().absoluteFilePath ("wsjtx_wisdom.dat")));
QByteArray cfname=fname.toLocal8Bit();
int success = fftwf_import_wisdom_from_filename(cfname);
getpfx(); //Load the prefix/suffix dictionary
genStdMsgs(m_rpt);
m_ntx=6;
@ -435,6 +439,9 @@ MainWindow::MainWindow(bool multiple, QSettings * settings, QSharedMemory *shdme
//--------------------------------------------------- MainWindow destructor
MainWindow::~MainWindow()
{
QString fname(QDir::toNativeSeparators(m_config.data_path ().absoluteFilePath ("wsjtx_wisdom.dat")));
QByteArray cfname=fname.toLocal8Bit();
fftwf_export_wisdom_to_filename(cfname);
m_audioThread->wait ();
}

View File

@ -417,6 +417,9 @@ extern "C" {
int ptt_(int nport, int ntx, int* iptt, int* nopen);
int fftwf_import_wisdom_from_filename(const char *);
int fftwf_export_wisdom_to_filename(const char *);
}
#endif // MAINWINDOW_H