Send filename and revision to q65c through a common block.

This commit is contained in:
Joe Taylor 2024-01-15 19:24:26 -05:00
parent 24bfc9f30d
commit 447127a49f
4 changed files with 16 additions and 8 deletions

View File

@ -96,6 +96,11 @@ extern struct {
char result[50][60]; //Staging area for QMAP decodes char result[50][60]; //Staging area for QMAP decodes
} decodes_; } decodes_;
extern struct {
char revision[22];
char saveFileName[120];
} savecom_;
} }
#endif // COMMONS_H #endif // COMMONS_H

View File

@ -1,4 +1,4 @@
subroutine q65c(fname0,revision0) subroutine q65c
use timer_module, only: timer use timer_module, only: timer
use timer_impl, only: fini_timer !, limtrace use timer_impl, only: fini_timer !, limtrace
@ -15,7 +15,6 @@ subroutine q65c(fname0,revision0)
integer values(8) integer values(8)
logical first logical first
logical*1 bAlso30 logical*1 bAlso30
character*(*) fname0,revision0
character*120 fname character*120 fname
character*22 revision character*22 revision
character*12 mycall,hiscall character*12 mycall,hiscall
@ -25,6 +24,7 @@ subroutine q65c(fname0,revision0)
common/decodes/ndecodes,ncand,nQDecoderDone,nWDecoderBusy, & common/decodes/ndecodes,ncand,nQDecoderDone,nWDecoderBusy, &
nWTransmitting,result(50) nWTransmitting,result(50)
common/datcom2/dd(2,5760000),ss(400,NFFT),savg(NFFT),nparams0 common/datcom2/dd(2,5760000),ss(400,NFFT),savg(NFFT),nparams0
common/savecom/revision,fname
!### REMEMBER that /npar/ is not updated until nparams=nparams0 is executed. ### !### REMEMBER that /npar/ is not updated until nparams=nparams0 is executed. ###
common/npar/fcenter,nutc,fselected,mousedf,mousefqso,nagain, & common/npar/fcenter,nutc,fselected,mousedf,mousefqso,nagain, &
ndepth,ndiskdat,ntx60,newdat,nn1,nn2,nfcal,nfshift, & ndepth,ndiskdat,ntx60,newdat,nn1,nn2,nfcal,nfshift, &
@ -35,8 +35,6 @@ subroutine q65c(fname0,revision0)
data first/.true./ data first/.true./
save first save first
fname=fname0
revision=revision0
nparams=nparams0 !Copy parameters into common/npar/ nparams=nparams0 !Copy parameters into common/npar/
datetime(12:)='00 ' datetime(12:)='00 '
npatience=1 npatience=1

View File

@ -940,9 +940,14 @@ void MainWindow::decode() //decode()
int len1=m_saveFileName.length(); int len1=m_saveFileName.length();
int len2=m_revision.length(); int len2=m_revision.length();
watcher3.setFuture(QtConcurrent::run (std::bind (q65c_,
m_saveFileName.toLatin1().constData(), memcpy(savecom_.revision, m_revision.toLatin1(), len2);
m_revision.toLatin1().constData(), len1, len2))); memcpy(savecom_.saveFileName, m_saveFileName.toLatin1(),len1);
watcher3.setFuture(QtConcurrent::run (q65c_));
//,
// m_saveFileName.toLatin1().constData(),
// m_revision.toLatin1().constData(), len1, len2)));
decodeBusy(true); decodeBusy(true);
} }

View File

@ -200,7 +200,7 @@ extern "C" {
void astrosub00_ (int* nyear, int* month, int* nday, double* uth, int* nfreq, void astrosub00_ (int* nyear, int* month, int* nday, double* uth, int* nfreq,
const char* mygrid, int* ndop00, int len1); const char* mygrid, int* ndop00, int len1);
void q65c_(const char* fname, const char* revision, int len1, int len2); void q65c_();
void all_done_(); void all_done_();