Added static built data list

This commit is contained in:
Jordan Sherer 2018-09-30 22:50:31 -04:00
parent 188d775b7f
commit 489cf3a85c
7 changed files with 467344 additions and 234111 deletions

View File

@ -306,6 +306,8 @@ set (wsjtx_CXXSRCS
WsprTxScheduler.cpp WsprTxScheduler.cpp
varicode.cpp varicode.cpp
jsc.cpp jsc.cpp
jsc_list.cpp
jsc_map.cpp
SelfDestructMessageBox.cpp SelfDestructMessageBox.cpp
messagereplydialog.cpp messagereplydialog.cpp
keyeater.cpp keyeater.cpp

16
jsc.cpp
View File

@ -45,6 +45,22 @@ Codeword codeword(quint32 index, bool separate, quint32 bytesize, quint32 s, qui
return word; return word;
} }
QPair<CompressionMap, CompressionList> JSC::loadCompressionTable(){
CompressionMap out;
CompressionList words;
for(int i = 0; i < JSC::size; i++){
out[JSC::map[i]] = i;
}
words.reserve(JSC::size);
for(int i = 0; i < JSC::size; i++){
words.append(JSC::list[i]);
}
return {out, words};
}
QPair<CompressionMap, CompressionList> JSC::loadCompressionTable(QTextStream &stream){ QPair<CompressionMap, CompressionList> JSC::loadCompressionTable(QTextStream &stream){
CompressionMap out; CompressionMap out;
CompressionList words; CompressionList words;

234096
jsc.dat

File diff suppressed because it is too large Load Diff

6
jsc.h
View File

@ -7,6 +7,7 @@
#include <QTextStream> #include <QTextStream>
#include <QList> #include <QList>
#include <QStringList>
#include <QMap> #include <QMap>
#include <QPair> #include <QPair>
#include <QVector> #include <QVector>
@ -20,9 +21,14 @@ typedef QVector<bool> Codeword;
class JSC class JSC
{ {
public: public:
static CompressionTable loadCompressionTable();
static CompressionTable loadCompressionTable(QTextStream &stream); static CompressionTable loadCompressionTable(QTextStream &stream);
static QList<CodewordPair> compress(CompressionTable table, QString text); static QList<CodewordPair> compress(CompressionTable table, QString text);
static QString decompress(CompressionTable table, Codeword const& bits); static QString decompress(CompressionTable table, Codeword const& bits);
static const int size = 233638;
static char const* map[];
static char const* list[];
}; };
#endif // JSC_H #endif // JSC_H

233651
jsc_list.cpp Normal file

File diff suppressed because it is too large Load Diff

233662
jsc_map.cpp Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1451,24 +1451,16 @@ void MainWindow::not_GA_warning_message ()
void MainWindow::initializeDummyData(){ void MainWindow::initializeDummyData(){
QFile file("jsc.dat"); auto table = JSC::loadCompressionTable();
if (file.open(QIODevice::ReadOnly | QIODevice::Text)){
QTextStream s(&file);
auto table = JSC::loadCompressionTable(s); Codeword bits;
auto compressed = JSC::compress(table, "E A T EAT TEA ATE EATTET");
Codeword bits; foreach(auto pair, compressed){
auto compressed = JSC::compress(table, "E A T EAT TEA ATE EATTET"); qDebug() << "compressed" << Varicode::bitsToStr(pair.first);
foreach(auto pair, compressed){ bits.append(pair.first);
qDebug() << "compressed" << Varicode::bitsToStr(pair.first);
bits.append(pair.first);
}
qDebug() << "decomressed" << JSC::decompress(table, bits);
} }
qDebug() << "decomressed" << JSC::decompress(table, bits);
if(!QApplication::applicationName().contains("dummy")){ if(!QApplication::applicationName().contains("dummy")){
return; return;