kopia lustrzana https://gitlab.com/eliggett/wfview
Merge branch 'master' into opus
commit
eb2f897a81
94
CHANGELOG
94
CHANGELOG
|
@ -1,5 +1,99 @@
|
|||
# CHANGELOG
|
||||
|
||||
- 20210809
|
||||
|
||||
Add constants to make parsing (hopefully) easier
|
||||
|
||||
- 20210808
|
||||
|
||||
Fake known functions
|
||||
|
||||
Fix float warning
|
||||
|
||||
Remove calibration debugging
|
||||
|
||||
Add proper s-meter calibration
|
||||
|
||||
- 20210807
|
||||
|
||||
Add ritctl model to rigCaps
|
||||
|
||||
Fix to make wsjt-x work again!
|
||||
|
||||
Add split/duplex support
|
||||
|
||||
Update rigctld.cpp
|
||||
|
||||
Correct lack of parentheses in conditionals
|
||||
|
||||
Fix typo
|
||||
|
||||
Remove some debug logging
|
||||
|
||||
More rigctl features/fixes
|
||||
|
||||
- 20210806
|
||||
|
||||
Fix for get_powerstat
|
||||
|
||||
Update rigctld.cpp
|
||||
|
||||
Add some levels and other functions
|
||||
|
||||
Fix compile warnings
|
||||
|
||||
Add frequency ranges from rigcaps
|
||||
|
||||
- 20210806
|
||||
|
||||
Move rigctld settings in Ui
|
||||
|
||||
Fixes for setting freq/mode
|
||||
|
||||
Support for more rigctld commands
|
||||
|
||||
More fixes to rigctld
|
||||
|
||||
Change the way rigctl response is built
|
||||
|
||||
More rigctld fixes
|
||||
|
||||
- 20210804
|
||||
|
||||
Add rigctld config to ui and fix some bugs
|
||||
|
||||
- 20210802
|
||||
|
||||
added derSuessman prefix code
|
||||
|
||||
- 20210801
|
||||
|
||||
Fix broken 8bit audio
|
||||
|
||||
added derSuessmann additions to have a linux install prefix
|
||||
|
||||
Fedora build/install notes, see merge request eliggett/wfview!4
|
||||
|
||||
- 20210730
|
||||
|
||||
Added a little extra logic, also some cross-platform help, to the custom
|
||||
stylesheet loader.
|
||||
|
||||
- 20210729
|
||||
|
||||
fix: set the style once
|
||||
|
||||
|
||||
added /usr/local to search path for the stylesheet
|
||||
|
||||
- 20210726
|
||||
|
||||
Fixed error in IC-7410 attenuator spec.
|
||||
|
||||
- 20210726
|
||||
|
||||
Fix for blank username/password in server
|
||||
|
||||
- 20210724
|
||||
|
||||
small changes to INSTAll.md and addition of mint 20.2/openSUSE 15.3
|
||||
|
|
31
INSTALL.md
31
INSTALL.md
|
@ -40,15 +40,16 @@ git clone https://gitlab.com/eliggett/wfview.git
|
|||
~~~
|
||||
|
||||
### 3. Create a build directory, compile, and install:
|
||||
If you want to change the default install path from `/usr/local` to a different prefix (e.g. `/opt`), you must call `qmake ../wfview/wfview.pro PREFIX=/opt`
|
||||
|
||||
~~~
|
||||
mkdir build
|
||||
cd build
|
||||
qmake ../wfview/wfview.pro
|
||||
make -j
|
||||
sudo ./install.sh
|
||||
sudo make install
|
||||
~~~
|
||||
|
||||
|
||||
### 4. You can now launch wfview, either from the terminal or from your desktop environment. If you encounter issues using the serial port, run the following command:
|
||||
~~~
|
||||
|
||||
|
@ -65,7 +66,7 @@ sudo usermod -aG dialout $USER
|
|||
|
||||
~~~
|
||||
|
||||
### opensuse/sles/tumbleweed install ###
|
||||
### opensuse/sles/tumbleweed install
|
||||
---
|
||||
|
||||
install wfview on suse 15.x sles 15.x or tumbleweed; this was done on a clean install/updated OS.
|
||||
|
@ -99,3 +100,27 @@ in this case, use your homedir:
|
|||
wfview is now installed in /usr/local/bin
|
||||
|
||||
---
|
||||
|
||||
### Fedora install ###
|
||||
---
|
||||
|
||||
Tested under Fedora 33/34.
|
||||
|
||||
Install qt5 dependencies:
|
||||
- sudo dnf install qt5-qtbase-common qt5-qtbase qt5-qtbase-gui qt5-qtserialport qt5-qtmultimedia mingw64-qt5-qmake qt5-qtbase-devel qt5-qtserialport-devel qt5-qtmultimedia-devel
|
||||
|
||||
Install qcustomplot:
|
||||
- sudo dnf install qcustomplot qcustomplot-devel
|
||||
|
||||
When done, create a build area, clone the repo, build and install:
|
||||
|
||||
- mkdir -p ~/src/build && cd src
|
||||
- git clone https://gitlab.com/eliggett/wfview.git
|
||||
- cd build
|
||||
- qmake-qt5 ../wfview/wfview.pro
|
||||
- make -j
|
||||
- sudo ./install.sh
|
||||
|
||||
wfview is now installed in /usr/local/bin
|
||||
|
||||
---
|
||||
|
|
19
WHATSNEW
19
WHATSNEW
|
@ -1,16 +1,9 @@
|
|||
|
||||
The following highlights are in this dot-release:
|
||||
The following highlights are in this 1.x-release:
|
||||
|
||||
many changes/mods/updates/enhancements to rigctld
|
||||
rigctld box added in the UI
|
||||
build process changed: you can add the install prefix (derSuessmann)
|
||||
added "do not ask again" for switching off rig and exiting wfview
|
||||
|
||||
added IC7700, 718, 7100. (more testing needed)
|
||||
fixes and improvements to audio
|
||||
ability to choose between rtaudio and qtmultimedia (default) as compile time option
|
||||
fixes and lots of improvements at the usb-server end
|
||||
waterfall length can be adjusted now
|
||||
no need to restart to change CIV address
|
||||
seamless changing rigs without restart
|
||||
started support for older rigs like the 718
|
||||
wf display disappears when there is no wf capable rig
|
||||
IC R8600 support improved
|
||||
for older rigs added a polling timing box to keep stuff keeping smooth
|
||||
Local af gain now has anti-log audio pot taper.
|
||||
|
||||
|
|
|
@ -539,7 +539,7 @@ void audioHandler::incomingAudio(audioPacket inPacket)
|
|||
{
|
||||
for (int g = setup.radioChan; g <= devChannels; g++)
|
||||
{
|
||||
if (isUlaw)
|
||||
if (setup.ulaw)
|
||||
*out++ = ulaw_decode[(quint8)inPacket.data[f]] * this->volume;
|
||||
else
|
||||
*out++ = (qint16)(((quint8)inPacket.data[f] << 8) - 32640 * this->volume);
|
||||
|
@ -690,7 +690,7 @@ void audioHandler::getNextAudioChunk(QByteArray& ret)
|
|||
for (int f = 0; f < outPacket.length(); f++)
|
||||
{
|
||||
quint8 outdata = 0;
|
||||
if (isUlaw) {
|
||||
if (setup.ulaw) {
|
||||
qint16 enc = qFromLittleEndian<quint16>(in + f);
|
||||
if (enc >= 0)
|
||||
outdata = ulaw_encode[enc];
|
||||
|
|
|
@ -162,9 +162,7 @@ private:
|
|||
#endif
|
||||
SpeexResamplerState* resampler = Q_NULLPTR;
|
||||
|
||||
bool isUlaw;
|
||||
quint16 audioLatency;
|
||||
bool isInput; // Used to determine whether input or output audio
|
||||
unsigned int chunkSize;
|
||||
bool chunkAvailable;
|
||||
|
||||
|
|
|
@ -311,7 +311,7 @@ void meter::drawScaleCenter(QPainter *qp)
|
|||
void meter::drawScalePo(QPainter *qp)
|
||||
{
|
||||
//From the manual: "0000=0% to 0143=50% to 0213=100%"
|
||||
float dnPerWatt = 143.0 / 50.0;
|
||||
float dnPerWatt = 143.0f / 50.0f;
|
||||
|
||||
qp->setPen(lowTextColor);
|
||||
//qp->setFont(QFont("Arial", fontSize));
|
||||
|
@ -332,7 +332,7 @@ void meter::drawScalePo(QPainter *qp)
|
|||
// Higher scale:
|
||||
i = i - (int)(10*dnPerWatt); // back one tick first. Otherwise i starts at 178.
|
||||
//qDebug() << "meter i: " << i;
|
||||
dnPerWatt = (213-143.0) / 50.0; // 1.4 dn per watt
|
||||
dnPerWatt = (213-143.0f) / 50.0f; // 1.4 dn per watt
|
||||
// P=5 here.
|
||||
qp->setPen(Qt::yellow);
|
||||
int k=0;
|
||||
|
|
|
@ -25,6 +25,9 @@ rigCommander::rigCommander()
|
|||
rigState.filter = 0;
|
||||
rigState.mode = 0;
|
||||
rigState.ptt = 0;
|
||||
rigState.currentVfo = 0;
|
||||
rigState.duplex = dmSplitOff;
|
||||
|
||||
}
|
||||
|
||||
rigCommander::~rigCommander()
|
||||
|
@ -140,7 +143,7 @@ void rigCommander::commSetup(unsigned char rigCivAddr, udpPreferences prefs, aud
|
|||
// data from the comm port to the program:
|
||||
|
||||
emit commReady();
|
||||
emit stateInfo(&rigState);
|
||||
sendState(); // Send current rig state to rigctld
|
||||
|
||||
pttAllowed = true; // This is for developing, set to false for "safe" debugging. Set to true for deployment.
|
||||
|
||||
|
@ -1218,12 +1221,16 @@ void rigCommander::parseCommand()
|
|||
break;
|
||||
case '\x0F':
|
||||
emit haveDuplexMode((duplexMode)(unsigned char)payloadIn[1]);
|
||||
rigState.duplex = (duplexMode)(unsigned char)payloadIn[1];
|
||||
break;
|
||||
case '\x11':
|
||||
emit haveAttenuator((unsigned char)payloadIn.at(1));
|
||||
rigState.attenuator = (unsigned char)payloadIn.at(1);
|
||||
break;
|
||||
case '\x12':
|
||||
emit haveAntenna((unsigned char)payloadIn.at(1), (bool)payloadIn.at(2));
|
||||
rigState.antenna = (unsigned char)payloadIn.at(1);
|
||||
rigState.rxAntenna = (bool)payloadIn.at(2);
|
||||
break;
|
||||
case '\x14':
|
||||
// read levels
|
||||
|
@ -1311,7 +1318,7 @@ void rigCommander::parseLevels()
|
|||
unsigned char tens = (payloadIn[3] & 0xf0) >> 4;
|
||||
unsigned char units = (payloadIn[3] & 0x0f);
|
||||
|
||||
unsigned char level = (100*hundreds) + (10*tens) + units;
|
||||
unsigned char level = ((unsigned char)100*hundreds) + (10*tens) + units;
|
||||
|
||||
//qInfo(logRig()) << "Level is: " << (int)level << " or " << 100.0*level/255.0 << "%";
|
||||
|
||||
|
@ -2288,7 +2295,7 @@ void rigCommander::parsePTT()
|
|||
// PTT on
|
||||
emit havePTTStatus(true);
|
||||
}
|
||||
rigState.ptt = (unsigned char)payloadIn[2];
|
||||
rigState.ptt = (bool)payloadIn[2];
|
||||
|
||||
}
|
||||
|
||||
|
@ -2852,6 +2859,7 @@ void rigCommander::determineRigCaps()
|
|||
switch(model){
|
||||
case model7300:
|
||||
rigCaps.modelName = QString("IC-7300");
|
||||
rigCaps.rigctlModel = 3073;
|
||||
rigCaps.hasSpectrum = true;
|
||||
rigCaps.spectSeqMax = 11;
|
||||
rigCaps.spectAmpMax = 160;
|
||||
|
@ -2875,6 +2883,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case modelR8600:
|
||||
rigCaps.modelName = QString("IC-R8600");
|
||||
rigCaps.rigctlModel = 3079;
|
||||
rigCaps.hasSpectrum = true;
|
||||
rigCaps.spectSeqMax = 11;
|
||||
rigCaps.spectAmpMax = 160;
|
||||
|
@ -2909,6 +2918,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model9700:
|
||||
rigCaps.modelName = QString("IC-9700");
|
||||
rigCaps.rigctlModel = 3081;
|
||||
rigCaps.hasSpectrum = true;
|
||||
rigCaps.spectSeqMax = 11;
|
||||
rigCaps.spectAmpMax = 160;
|
||||
|
@ -2936,6 +2946,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model910h:
|
||||
rigCaps.modelName = QString("IC-910H");
|
||||
rigCaps.rigctlModel = 3044;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.hasLan = false;
|
||||
rigCaps.hasEthernet = false;
|
||||
|
@ -2957,6 +2968,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7600:
|
||||
rigCaps.modelName = QString("IC-7600");
|
||||
rigCaps.rigctlModel = 3063;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.append(inputACC);
|
||||
rigCaps.inputs.append(inputUSB);
|
||||
|
@ -2980,6 +2992,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7610:
|
||||
rigCaps.modelName = QString("IC-7610");
|
||||
rigCaps.rigctlModel = 3078;
|
||||
rigCaps.hasSpectrum = true;
|
||||
rigCaps.spectSeqMax = 15;
|
||||
rigCaps.spectAmpMax = 200;
|
||||
|
@ -3010,6 +3023,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7850:
|
||||
rigCaps.modelName = QString("IC-785x");
|
||||
rigCaps.rigctlModel = 3075;
|
||||
rigCaps.hasSpectrum = true;
|
||||
rigCaps.spectSeqMax = 15;
|
||||
rigCaps.spectAmpMax = 136;
|
||||
|
@ -3041,6 +3055,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model705:
|
||||
rigCaps.modelName = QString("IC-705");
|
||||
rigCaps.rigctlModel = 3085;
|
||||
rigCaps.hasSpectrum = true;
|
||||
rigCaps.spectSeqMax = 11;
|
||||
rigCaps.spectAmpMax = 160;
|
||||
|
@ -3076,6 +3091,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7000:
|
||||
rigCaps.modelName = QString("IC-7000");
|
||||
rigCaps.rigctlModel = 3060;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.append(inputACC);
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3097,6 +3113,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7410:
|
||||
rigCaps.modelName = QString("IC-7410");
|
||||
rigCaps.rigctlModel = 3067;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.append(inputACC);
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3106,7 +3123,7 @@ void rigCommander::determineRigCaps()
|
|||
rigCaps.hasATU = true;
|
||||
rigCaps.hasCTCSS = true;
|
||||
rigCaps.hasDTCS = true;
|
||||
rigCaps.attenuators.push_back('\x12');
|
||||
rigCaps.attenuators.push_back('\x20');
|
||||
rigCaps.preamps.push_back('\x01');
|
||||
rigCaps.preamps.push_back('\x02');
|
||||
rigCaps.antennas = {0x00, 0x01};
|
||||
|
@ -3117,6 +3134,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7100:
|
||||
rigCaps.modelName = QString("IC-7100");
|
||||
rigCaps.rigctlModel = 3070;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.append(inputUSB);
|
||||
rigCaps.inputs.append(inputACC);
|
||||
|
@ -3143,6 +3161,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7200:
|
||||
rigCaps.modelName = QString("IC-7200");
|
||||
rigCaps.rigctlModel = 3061;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.append(inputUSB);
|
||||
rigCaps.inputs.append(inputACC);
|
||||
|
@ -3162,6 +3181,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model7700:
|
||||
rigCaps.modelName = QString("IC-7700");
|
||||
rigCaps.rigctlModel = 3062;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.append(inputLAN);
|
||||
//rigCaps.inputs.append(inputSPDIF);
|
||||
|
@ -3187,6 +3207,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model706:
|
||||
rigCaps.modelName = QString("IC-706");
|
||||
rigCaps.rigctlModel = 3009;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.clear();
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3205,6 +3226,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model718:
|
||||
rigCaps.modelName = QString("IC-718");
|
||||
rigCaps.rigctlModel = 3013;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.clear();
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3227,6 +3249,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model756pro:
|
||||
rigCaps.modelName = QString("IC-756 Pro");
|
||||
rigCaps.rigctlModel = 3027;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.clear();
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3245,6 +3268,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model756proii:
|
||||
rigCaps.modelName = QString("IC-756 Pro II");
|
||||
rigCaps.rigctlModel = 3027;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.clear();
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3263,6 +3287,7 @@ void rigCommander::determineRigCaps()
|
|||
break;
|
||||
case model756proiii:
|
||||
rigCaps.modelName = QString("IC-756 Pro III");
|
||||
rigCaps.rigctlModel = 3027;
|
||||
rigCaps.hasSpectrum = false;
|
||||
rigCaps.inputs.clear();
|
||||
rigCaps.hasLan = false;
|
||||
|
@ -3785,6 +3810,11 @@ QByteArray rigCommander::stripData(const QByteArray &data, unsigned char cutPosi
|
|||
return rtndata;
|
||||
}
|
||||
|
||||
void rigCommander::sendState()
|
||||
{
|
||||
emit stateInfo(&rigState);
|
||||
}
|
||||
|
||||
void rigCommander::getDebug()
|
||||
{
|
||||
// generic debug function for development.
|
||||
|
|
|
@ -62,10 +62,14 @@ struct timekind {
|
|||
struct rigStateStruct {
|
||||
freqt vfoAFreq;
|
||||
freqt vfoBFreq;
|
||||
unsigned char ptt;
|
||||
unsigned char currentVfo;
|
||||
bool ptt;
|
||||
unsigned char mode;
|
||||
unsigned char filter;
|
||||
duplexMode duplex;
|
||||
bool datamode;
|
||||
unsigned char antenna;
|
||||
bool rxAntenna;
|
||||
// Tones
|
||||
quint16 ctcss;
|
||||
quint16 tsql;
|
||||
|
@ -73,6 +77,7 @@ struct rigStateStruct {
|
|||
quint16 csql;
|
||||
// Levels
|
||||
unsigned char preamp;
|
||||
unsigned char attenuator;
|
||||
unsigned char modInput;
|
||||
unsigned char afGain;
|
||||
unsigned char rfGain;
|
||||
|
@ -91,6 +96,38 @@ struct rigStateStruct {
|
|||
unsigned char compMeter;
|
||||
unsigned char voltageMeter;
|
||||
unsigned char currentMeter;
|
||||
// Functions
|
||||
bool fagcFunc=false;
|
||||
bool nbFunc=false;
|
||||
bool compFunc=false;
|
||||
bool voxFunc = false;
|
||||
bool toneFunc = false;
|
||||
bool tsqlFunc = false;
|
||||
bool sbkinFunc = false;
|
||||
bool fbkinFunc = false;
|
||||
bool anfFunc = false;
|
||||
bool nrFunc = false;
|
||||
bool aipFunc = false;
|
||||
bool apfFunc = false;
|
||||
bool monFunc = false;
|
||||
bool mnFunc = false;
|
||||
bool rfFunc = false;
|
||||
bool aroFunc = false;
|
||||
bool muteFunc = false;
|
||||
bool vscFunc = false;
|
||||
bool revFunc = false;
|
||||
bool sqlFunc = false;
|
||||
bool abmFunc = false;
|
||||
bool bcFunc = false;
|
||||
bool mbcFunc = false;
|
||||
bool ritFunc = false;
|
||||
bool afcFunc = false;
|
||||
bool satmodeFunc = false;
|
||||
bool scopeFunc = false;
|
||||
bool resumeFunc = false;
|
||||
bool tburstFunc = false;
|
||||
bool tunerFunc = false;
|
||||
bool lockFunc = false;
|
||||
};
|
||||
|
||||
class rigCommander : public QObject
|
||||
|
@ -270,6 +307,7 @@ public slots:
|
|||
|
||||
// Housekeeping:
|
||||
void handleStatusUpdate(const QString text);
|
||||
void sendState();
|
||||
void getDebug();
|
||||
|
||||
signals:
|
||||
|
|
1096
rigctld.cpp
1096
rigctld.cpp
Plik diff jest za duży
Load Diff
377
rigctld.h
377
rigctld.h
|
@ -1,3 +1,9 @@
|
|||
/* This file contains portions of the Hamlib Interface - API header
|
||||
* Copyright(c) 2000 - 2003 by Frank Singleton
|
||||
* Copyright(c) 2000 - 2012 by Stephane Fillod
|
||||
*/
|
||||
|
||||
|
||||
#ifndef RIGCTLD_H
|
||||
#define RIGCTLD_H
|
||||
|
||||
|
@ -14,6 +20,345 @@
|
|||
|
||||
#include "rigcommander.h"
|
||||
|
||||
#define CONSTANT_64BIT_FLAG(BIT) (1ull << (BIT))
|
||||
|
||||
#define RIG_MODE_NONE 0 /*!< '' -- None */
|
||||
#define RIG_MODE_AM CONSTANT_64BIT_FLAG (0) /*!< \c AM -- Amplitude Modulation */
|
||||
#define RIG_MODE_CW CONSTANT_64BIT_FLAG (1) /*!< \c CW -- CW "normal" sideband */
|
||||
#define RIG_MODE_USB CONSTANT_64BIT_FLAG (2) /*!< \c USB -- Upper Side Band */
|
||||
#define RIG_MODE_LSB CONSTANT_64BIT_FLAG (3) /*!< \c LSB -- Lower Side Band */
|
||||
#define RIG_MODE_RTTY CONSTANT_64BIT_FLAG (4) /*!< \c RTTY -- Radio Teletype */
|
||||
#define RIG_MODE_FM CONSTANT_64BIT_FLAG (5) /*!< \c FM -- "narrow" band FM */
|
||||
#define RIG_MODE_WFM CONSTANT_64BIT_FLAG (6) /*!< \c WFM -- broadcast wide FM */
|
||||
#define RIG_MODE_CWR CONSTANT_64BIT_FLAG (7) /*!< \c CWR -- CW "reverse" sideband */
|
||||
#define RIG_MODE_RTTYR CONSTANT_64BIT_FLAG (8) /*!< \c RTTYR -- RTTY "reverse" sideband */
|
||||
#define RIG_MODE_AMS CONSTANT_64BIT_FLAG (9) /*!< \c AMS -- Amplitude Modulation Synchronous */
|
||||
#define RIG_MODE_PKTLSB CONSTANT_64BIT_FLAG (10) /*!< \c PKTLSB -- Packet/Digital LSB mode (dedicated port) */
|
||||
#define RIG_MODE_PKTUSB CONSTANT_64BIT_FLAG (11) /*!< \c PKTUSB -- Packet/Digital USB mode (dedicated port) */
|
||||
#define RIG_MODE_PKTFM CONSTANT_64BIT_FLAG (12) /*!< \c PKTFM -- Packet/Digital FM mode (dedicated port) */
|
||||
#define RIG_MODE_ECSSUSB CONSTANT_64BIT_FLAG (13) /*!< \c ECSSUSB -- Exalted Carrier Single Sideband USB */
|
||||
#define RIG_MODE_ECSSLSB CONSTANT_64BIT_FLAG (14) /*!< \c ECSSLSB -- Exalted Carrier Single Sideband LSB */
|
||||
#define RIG_MODE_FAX CONSTANT_64BIT_FLAG (15) /*!< \c FAX -- Facsimile Mode */
|
||||
#define RIG_MODE_SAM CONSTANT_64BIT_FLAG (16) /*!< \c SAM -- Synchronous AM double sideband */
|
||||
#define RIG_MODE_SAL CONSTANT_64BIT_FLAG (17) /*!< \c SAL -- Synchronous AM lower sideband */
|
||||
#define RIG_MODE_SAH CONSTANT_64BIT_FLAG (18) /*!< \c SAH -- Synchronous AM upper (higher) sideband */
|
||||
#define RIG_MODE_DSB CONSTANT_64BIT_FLAG (19) /*!< \c DSB -- Double sideband suppressed carrier */
|
||||
#define RIG_MODE_FMN CONSTANT_64BIT_FLAG (21) /*!< \c FMN -- FM Narrow Kenwood ts990s */
|
||||
#define RIG_MODE_PKTAM CONSTANT_64BIT_FLAG (22) /*!< \c PKTAM -- Packet/Digital AM mode e.g. IC7300 */
|
||||
#define RIG_MODE_P25 CONSTANT_64BIT_FLAG (23) /*!< \c P25 -- APCO/P25 VHF,UHF digital mode IC-R8600 */
|
||||
#define RIG_MODE_DSTAR CONSTANT_64BIT_FLAG (24) /*!< \c D-Star -- VHF,UHF digital mode IC-R8600 */
|
||||
#define RIG_MODE_DPMR CONSTANT_64BIT_FLAG (25) /*!< \c dPMR -- digital PMR, VHF,UHF digital mode IC-R8600 */
|
||||
#define RIG_MODE_NXDNVN CONSTANT_64BIT_FLAG (26) /*!< \c NXDN-VN -- VHF,UHF digital mode IC-R8600 */
|
||||
#define RIG_MODE_NXDN_N CONSTANT_64BIT_FLAG (27) /*!< \c NXDN-N -- VHF,UHF digital mode IC-R8600 */
|
||||
#define RIG_MODE_DCR CONSTANT_64BIT_FLAG (28) /*!< \c DCR -- VHF,UHF digital mode IC-R8600 */
|
||||
#define RIG_MODE_AMN CONSTANT_64BIT_FLAG (29) /*!< \c AM-N -- Narrow band AM mode IC-R30 */
|
||||
#define RIG_MODE_PSK CONSTANT_64BIT_FLAG (30) /*!< \c PSK - Kenwood PSK and others */
|
||||
#define RIG_MODE_PSKR CONSTANT_64BIT_FLAG (31) /*!< \c PSKR - Kenwood PSKR and others */
|
||||
#define RIG_MODE_DD CONSTANT_64BIT_FLAG (32) /*!< \c DD Mode IC-9700 */
|
||||
#define RIG_MODE_C4FM CONSTANT_64BIT_FLAG (33) /*!< \c Yaesu C4FM mode */
|
||||
#define RIG_MODE_PKTFMN CONSTANT_64BIT_FLAG (34) /*!< \c Yaesu DATA-FM-N */
|
||||
#define RIG_MODE_SPEC CONSTANT_64BIT_FLAG (35) /*!< \c Unfiltered as in PowerSDR */
|
||||
|
||||
#define RIG_LEVEL_NONE 0 /*!< '' -- No Level */
|
||||
#define RIG_LEVEL_PREAMP CONSTANT_64BIT_FLAG(0) /*!< \c PREAMP -- Preamp, arg int (dB) */
|
||||
#define RIG_LEVEL_ATT CONSTANT_64BIT_FLAG(1) /*!< \c ATT -- Attenuator, arg int (dB) */
|
||||
#define RIG_LEVEL_VOXDELAY CONSTANT_64BIT_FLAG(2) /*!< \c VOXDELAY -- VOX delay, arg int (tenth of seconds) */
|
||||
#define RIG_LEVEL_AF CONSTANT_64BIT_FLAG(3) /*!< \c AF -- Volume, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_RF CONSTANT_64BIT_FLAG(4) /*!< \c RF -- RF gain (not TX power) arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_SQL CONSTANT_64BIT_FLAG(5) /*!< \c SQL -- Squelch, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_IF CONSTANT_64BIT_FLAG(6) /*!< \c IF -- IF, arg int (Hz) */
|
||||
#define RIG_LEVEL_APF CONSTANT_64BIT_FLAG(7) /*!< \c APF -- Audio Peak Filter, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_NR CONSTANT_64BIT_FLAG(8) /*!< \c NR -- Noise Reduction, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_PBT_IN CONSTANT_64BIT_FLAG(9) /*!< \c PBT_IN -- Twin PBT (inside) arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_PBT_OUT CONSTANT_64BIT_FLAG(10) /*!< \c PBT_OUT -- Twin PBT (outside) arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_CWPITCH CONSTANT_64BIT_FLAG(11) /*!< \c CWPITCH -- CW pitch, arg int (Hz) */
|
||||
#define RIG_LEVEL_RFPOWER CONSTANT_64BIT_FLAG(12) /*!< \c RFPOWER -- RF Power, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_MICGAIN CONSTANT_64BIT_FLAG(13) /*!< \c MICGAIN -- MIC Gain, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_KEYSPD CONSTANT_64BIT_FLAG(14) /*!< \c KEYSPD -- Key Speed, arg int (WPM) */
|
||||
#define RIG_LEVEL_NOTCHF CONSTANT_64BIT_FLAG(15) /*!< \c NOTCHF -- Notch Freq., arg int (Hz) */
|
||||
#define RIG_LEVEL_COMP CONSTANT_64BIT_FLAG(16) /*!< \c COMP -- Compressor, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_AGC CONSTANT_64BIT_FLAG(17) /*!< \c AGC -- AGC, arg int (see enum agc_level_e) */
|
||||
#define RIG_LEVEL_BKINDL CONSTANT_64BIT_FLAG(18) /*!< \c BKINDL -- BKin Delay, arg int (tenth of dots) */
|
||||
#define RIG_LEVEL_BALANCE CONSTANT_64BIT_FLAG(19) /*!< \c BAL -- Balance (Dual Watch) arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_METER CONSTANT_64BIT_FLAG(20) /*!< \c METER -- Display meter, arg int (see enum meter_level_e) */
|
||||
#define RIG_LEVEL_VOXGAIN CONSTANT_64BIT_FLAG(21) /*!< \c VOXGAIN -- VOX gain level, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_ANTIVOX CONSTANT_64BIT_FLAG(22) /*!< \c ANTIVOX -- anti-VOX level, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_SLOPE_LOW CONSTANT_64BIT_FLAG(23) /*!< \c SLOPE_LOW -- Slope tune, low frequency cut, arg int (Hz) */
|
||||
#define RIG_LEVEL_SLOPE_HIGH CONSTANT_64BIT_FLAG(24) /*!< \c SLOPE_HIGH -- Slope tune, high frequency cut, arg int (Hz) */
|
||||
#define RIG_LEVEL_BKIN_DLYMS CONSTANT_64BIT_FLAG(25) /*!< \c BKIN_DLYMS -- BKin Delay, arg int Milliseconds */
|
||||
|
||||
/*!< These are not settable */
|
||||
#define RIG_LEVEL_RAWSTR CONSTANT_64BIT_FLAG(26) /*!< \c RAWSTR -- Raw (A/D) value for signal strength, specific to each rig, arg int */
|
||||
//#define RIG_LEVEL_SQLSTAT CONSTANT_64BIT_FLAG(27) /*!< \c SQLSTAT -- SQL status, arg int (open=1/closed=0). Deprecated, use get_dcd instead */
|
||||
#define RIG_LEVEL_SWR CONSTANT_64BIT_FLAG(28) /*!< \c SWR -- SWR, arg float [0.0 ... infinite] */
|
||||
#define RIG_LEVEL_ALC CONSTANT_64BIT_FLAG(29) /*!< \c ALC -- ALC, arg float */
|
||||
#define RIG_LEVEL_STRENGTH CONSTANT_64BIT_FLAG(30) /*!< \c STRENGTH -- Effective (calibrated) signal strength relative to S9, arg int (dB) */
|
||||
/* RIG_LEVEL_BWC (1<<31) */ /*!< Bandwidth Control, arg int (Hz) */
|
||||
#define RIG_LEVEL_RFPOWER_METER CONSTANT_64BIT_FLAG(32) /*!< \c RFPOWER_METER -- RF power output meter, arg float [0.0 ... 1.0] (percentage of maximum power) */
|
||||
#define RIG_LEVEL_COMP_METER CONSTANT_64BIT_FLAG(33) /*!< \c COMP_METER -- Audio output level compression meter, arg float (dB) */
|
||||
#define RIG_LEVEL_VD_METER CONSTANT_64BIT_FLAG(34) /*!< \c VD_METER -- Input voltage level meter, arg float (V, volts) */
|
||||
#define RIG_LEVEL_ID_METER CONSTANT_64BIT_FLAG(35) /*!< \c ID_METER -- Current draw meter, arg float (A, amperes) */
|
||||
#define RIG_LEVEL_NOTCHF_RAW CONSTANT_64BIT_FLAG(36) /*!< \c NOTCHF_RAW -- Notch Freq., arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_MONITOR_GAIN CONSTANT_64BIT_FLAG(37) /*!< \c MONITOR_GAIN -- Monitor gain (level for monitoring of transmitted audio) arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_NB CONSTANT_64BIT_FLAG(38) /*!< \c NB -- Noise Blanker level, arg float [0.0 ... 1.0] */
|
||||
#define RIG_LEVEL_RFPOWER_METER_WATTS CONSTANT_64BIT_FLAG(39) /*!< \c RFPOWER_METER_WATTS -- RF power output meter, arg float [0.0 ... MAX] (output power in watts) */
|
||||
#define RIG_LEVEL_SPECTRUM_MODE CONSTANT_64BIT_FLAG(40) /*!< \c SPECTRUM_MODE -- Spectrum scope mode, arg int (see enum rig_spectrum_mode_e). Supported modes defined in rig caps. */
|
||||
#define RIG_LEVEL_SPECTRUM_SPAN CONSTANT_64BIT_FLAG(41) /*!< \c SPECTRUM_SPAN -- Spectrum scope span in center mode, arg int (Hz). Supported spans defined in rig caps. */
|
||||
#define RIG_LEVEL_SPECTRUM_EDGE_LOW CONSTANT_64BIT_FLAG(42) /*!< \c SPECTRUM_EDGE_LOW -- Spectrum scope low edge in fixed mode, arg int (Hz) */
|
||||
#define RIG_LEVEL_SPECTRUM_EDGE_HIGH CONSTANT_64BIT_FLAG(43) /*!< \c SPECTRUM_EDGE_HIGH -- Spectrum scope high edge in fixed mode, arg int (Hz) */
|
||||
#define RIG_LEVEL_SPECTRUM_SPEED CONSTANT_64BIT_FLAG(44) /*!< \c SPECTRUM_SPEED -- Spectrum scope update speed, arg int (highest is fastest, define rig-specific granularity) */
|
||||
#define RIG_LEVEL_SPECTRUM_REF CONSTANT_64BIT_FLAG(45) /*!< \c SPECTRUM_REF -- Spectrum scope reference display level, arg float (dB, define rig-specific granularity) */
|
||||
#define RIG_LEVEL_SPECTRUM_AVG CONSTANT_64BIT_FLAG(46) /*!< \c SPECTRUM_AVG -- Spectrum scope averaging mode, arg int (see struct rig_spectrum_avg_mode). Supported averaging modes defined in rig caps. */
|
||||
#define RIG_LEVEL_SPECTRUM_ATT CONSTANT_64BIT_FLAG(47) /*!< \c SPECTRUM_ATT -- Spectrum scope attenuator, arg int (dB). Supported attenuator values defined in rig caps. */
|
||||
#define RIG_LEVEL_TEMP_METER CONSTANT_64BIT_FLAG(48) /*!< \c TEMP_METER -- arg int (C, centigrade) */
|
||||
|
||||
#define RIG_FUNC_NONE 0 /*!< '' -- No Function */
|
||||
#define RIG_FUNC_FAGC CONSTANT_64BIT_FLAG (0) /*!< \c FAGC -- Fast AGC */
|
||||
#define RIG_FUNC_NB CONSTANT_64BIT_FLAG (1) /*!< \c NB -- Noise Blanker */
|
||||
#define RIG_FUNC_COMP CONSTANT_64BIT_FLAG (2) /*!< \c COMP -- Speech Compression */
|
||||
#define RIG_FUNC_VOX CONSTANT_64BIT_FLAG (3) /*!< \c VOX -- Voice Operated Relay */
|
||||
#define RIG_FUNC_TONE CONSTANT_64BIT_FLAG (4) /*!< \c TONE -- CTCSS Tone TX */
|
||||
#define RIG_FUNC_TSQL CONSTANT_64BIT_FLAG (5) /*!< \c TSQL -- CTCSS Activate/De-activate RX */
|
||||
#define RIG_FUNC_SBKIN CONSTANT_64BIT_FLAG (6) /*!< \c SBKIN -- Semi Break-in (CW mode) */
|
||||
#define RIG_FUNC_FBKIN CONSTANT_64BIT_FLAG (7) /*!< \c FBKIN -- Full Break-in (CW mode) */
|
||||
#define RIG_FUNC_ANF CONSTANT_64BIT_FLAG (8) /*!< \c ANF -- Automatic Notch Filter (DSP) */
|
||||
#define RIG_FUNC_NR CONSTANT_64BIT_FLAG (9) /*!< \c NR -- Noise Reduction (DSP) */
|
||||
#define RIG_FUNC_AIP CONSTANT_64BIT_FLAG (10) /*!< \c AIP -- RF pre-amp (AIP on Kenwood, IPO on Yaesu, etc.) */
|
||||
#define RIG_FUNC_APF CONSTANT_64BIT_FLAG (11) /*!< \c APF -- Auto Passband/Audio Peak Filter */
|
||||
#define RIG_FUNC_MON CONSTANT_64BIT_FLAG (12) /*!< \c MON -- Monitor transmitted signal */
|
||||
#define RIG_FUNC_MN CONSTANT_64BIT_FLAG (13) /*!< \c MN -- Manual Notch */
|
||||
#define RIG_FUNC_RF CONSTANT_64BIT_FLAG (14) /*!< \c RF -- RTTY Filter */
|
||||
#define RIG_FUNC_ARO CONSTANT_64BIT_FLAG (15) /*!< \c ARO -- Auto Repeater Offset */
|
||||
#define RIG_FUNC_LOCK CONSTANT_64BIT_FLAG (16) /*!< \c LOCK -- Lock */
|
||||
#define RIG_FUNC_MUTE CONSTANT_64BIT_FLAG (17) /*!< \c MUTE -- Mute */
|
||||
#define RIG_FUNC_VSC CONSTANT_64BIT_FLAG (18) /*!< \c VSC -- Voice Scan Control */
|
||||
#define RIG_FUNC_REV CONSTANT_64BIT_FLAG (19) /*!< \c REV -- Reverse transmit and receive frequencies */
|
||||
#define RIG_FUNC_SQL CONSTANT_64BIT_FLAG (20) /*!< \c SQL -- Turn Squelch Monitor on/off */
|
||||
#define RIG_FUNC_ABM CONSTANT_64BIT_FLAG (21) /*!< \c ABM -- Auto Band Mode */
|
||||
#define RIG_FUNC_BC CONSTANT_64BIT_FLAG (22) /*!< \c BC -- Beat Canceller */
|
||||
#define RIG_FUNC_MBC CONSTANT_64BIT_FLAG (23) /*!< \c MBC -- Manual Beat Canceller */
|
||||
#define RIG_FUNC_RIT CONSTANT_64BIT_FLAG (24) /*!< \c RIT -- Receiver Incremental Tuning */
|
||||
#define RIG_FUNC_AFC CONSTANT_64BIT_FLAG (25) /*!< \c AFC -- Auto Frequency Control ON/OFF */
|
||||
#define RIG_FUNC_SATMODE CONSTANT_64BIT_FLAG (26) /*!< \c SATMODE -- Satellite mode ON/OFF */
|
||||
#define RIG_FUNC_SCOPE CONSTANT_64BIT_FLAG (27) /*!< \c SCOPE -- Simple bandscope ON/OFF */
|
||||
#define RIG_FUNC_RESUME CONSTANT_64BIT_FLAG (28) /*!< \c RESUME -- Scan auto-resume */
|
||||
#define RIG_FUNC_TBURST CONSTANT_64BIT_FLAG (29) /*!< \c TBURST -- 1750 Hz tone burst */
|
||||
#define RIG_FUNC_TUNER CONSTANT_64BIT_FLAG (30) /*!< \c TUNER -- Enable automatic tuner */
|
||||
#define RIG_FUNC_XIT CONSTANT_64BIT_FLAG (31) /*!< \c XIT -- Transmitter Incremental Tuning */
|
||||
#define RIG_FUNC_NB2 CONSTANT_64BIT_FLAG (32) /*!< \c NB2 -- 2nd Noise Blanker */
|
||||
#define RIG_FUNC_CSQL CONSTANT_64BIT_FLAG (33) /*!< \c CSQL -- DCS Squelch setting */
|
||||
#define RIG_FUNC_AFLT CONSTANT_64BIT_FLAG (34) /*!< \c AFLT -- AF Filter setting */
|
||||
#define RIG_FUNC_ANL CONSTANT_64BIT_FLAG (35) /*!< \c ANL -- Noise limiter setting */
|
||||
#define RIG_FUNC_BC2 CONSTANT_64BIT_FLAG (36) /*!< \c BC2 -- 2nd Beat Cancel */
|
||||
#define RIG_FUNC_DUAL_WATCH CONSTANT_64BIT_FLAG (37) /*!< \c DUAL_WATCH -- Dual Watch / Sub Receiver */
|
||||
#define RIG_FUNC_DIVERSITY CONSTANT_64BIT_FLAG (38) /*!< \c DIVERSITY -- Diversity receive */
|
||||
#define RIG_FUNC_DSQL CONSTANT_64BIT_FLAG (39) /*!< \c DSQL -- Digital modes squelch */
|
||||
#define RIG_FUNC_SCEN CONSTANT_64BIT_FLAG (40) /*!< \c SCEN -- scrambler/encryption */
|
||||
#define RIG_FUNC_SLICE CONSTANT_64BIT_FLAG (41) /*!< \c Rig slice selection -- Flex */
|
||||
#define RIG_FUNC_TRANSCEIVE CONSTANT_64BIT_FLAG (42) /*!< \c TRANSCEIVE -- Send radio state changes automatically ON/OFF */
|
||||
#define RIG_FUNC_SPECTRUM CONSTANT_64BIT_FLAG (43) /*!< \c SPECTRUM -- Spectrum scope data output ON/OFF */
|
||||
#define RIG_FUNC_SPECTRUM_HOLD CONSTANT_64BIT_FLAG (44) /*!< \c SPECTRUM_HOLD -- Pause spectrum scope updates ON/OFF */
|
||||
|
||||
static struct
|
||||
{
|
||||
quint64 mode;
|
||||
const char* str;
|
||||
} mode_str[] =
|
||||
{
|
||||
{ RIG_MODE_AM, "AM" },
|
||||
{ RIG_MODE_CW, "CW" },
|
||||
{ RIG_MODE_USB, "USB" },
|
||||
{ RIG_MODE_LSB, "LSB" },
|
||||
{ RIG_MODE_RTTY, "RTTY" },
|
||||
{ RIG_MODE_FM, "FM" },
|
||||
{ RIG_MODE_WFM, "WFM" },
|
||||
{ RIG_MODE_CWR, "CWR" },
|
||||
{ RIG_MODE_RTTYR, "RTTYR" },
|
||||
{ RIG_MODE_AMS, "AMS" },
|
||||
{ RIG_MODE_PKTLSB, "PKTLSB" },
|
||||
{ RIG_MODE_PKTUSB, "PKTUSB" },
|
||||
{ RIG_MODE_PKTFM, "PKTFM" },
|
||||
{ RIG_MODE_PKTFMN, "PKTFMN" },
|
||||
{ RIG_MODE_ECSSUSB, "ECSSUSB" },
|
||||
{ RIG_MODE_ECSSLSB, "ECSSLSB" },
|
||||
{ RIG_MODE_FAX, "FAX" },
|
||||
{ RIG_MODE_SAM, "SAM" },
|
||||
{ RIG_MODE_SAL, "SAL" },
|
||||
{ RIG_MODE_SAH, "SAH" },
|
||||
{ RIG_MODE_DSB, "DSB"},
|
||||
{ RIG_MODE_FMN, "FMN" },
|
||||
{ RIG_MODE_PKTAM, "PKTAM"},
|
||||
{ RIG_MODE_P25, "P25"},
|
||||
{ RIG_MODE_DSTAR, "D-STAR"},
|
||||
{ RIG_MODE_DPMR, "DPMR"},
|
||||
{ RIG_MODE_NXDNVN, "NXDN-VN"},
|
||||
{ RIG_MODE_NXDN_N, "NXDN-N"},
|
||||
{ RIG_MODE_DCR, "DCR"},
|
||||
{ RIG_MODE_AMN, "AMN"},
|
||||
{ RIG_MODE_PSK, "PSK"},
|
||||
{ RIG_MODE_PSKR, "PSKR"},
|
||||
{ RIG_MODE_C4FM, "C4FM"},
|
||||
{ RIG_MODE_SPEC, "SPEC"},
|
||||
{ RIG_MODE_NONE, "" },
|
||||
};
|
||||
|
||||
static struct
|
||||
{
|
||||
quint64 func;
|
||||
const char* str;
|
||||
} rig_func_str[] =
|
||||
{
|
||||
{ RIG_FUNC_FAGC, "FAGC" },
|
||||
{ RIG_FUNC_NB, "NB" },
|
||||
{ RIG_FUNC_COMP, "COMP" },
|
||||
{ RIG_FUNC_VOX, "VOX" },
|
||||
{ RIG_FUNC_TONE, "TONE" },
|
||||
{ RIG_FUNC_TSQL, "TSQL" },
|
||||
{ RIG_FUNC_SBKIN, "SBKIN" },
|
||||
{ RIG_FUNC_FBKIN, "FBKIN" },
|
||||
{ RIG_FUNC_ANF, "ANF" },
|
||||
{ RIG_FUNC_NR, "NR" },
|
||||
{ RIG_FUNC_AIP, "AIP" },
|
||||
{ RIG_FUNC_APF, "APF" },
|
||||
{ RIG_FUNC_MON, "MON" },
|
||||
{ RIG_FUNC_MN, "MN" },
|
||||
{ RIG_FUNC_RF, "RF" },
|
||||
{ RIG_FUNC_ARO, "ARO" },
|
||||
{ RIG_FUNC_LOCK, "LOCK" },
|
||||
{ RIG_FUNC_MUTE, "MUTE" },
|
||||
{ RIG_FUNC_VSC, "VSC" },
|
||||
{ RIG_FUNC_REV, "REV" },
|
||||
{ RIG_FUNC_SQL, "SQL" },
|
||||
{ RIG_FUNC_ABM, "ABM" },
|
||||
{ RIG_FUNC_BC, "BC" },
|
||||
{ RIG_FUNC_MBC, "MBC" },
|
||||
{ RIG_FUNC_RIT, "RIT" },
|
||||
{ RIG_FUNC_AFC, "AFC" },
|
||||
{ RIG_FUNC_SATMODE, "SATMODE" },
|
||||
{ RIG_FUNC_SCOPE, "SCOPE" },
|
||||
{ RIG_FUNC_RESUME, "RESUME" },
|
||||
{ RIG_FUNC_TBURST, "TBURST" },
|
||||
{ RIG_FUNC_TUNER, "TUNER" },
|
||||
{ RIG_FUNC_XIT, "XIT" },
|
||||
{ RIG_FUNC_NB2, "NB2" },
|
||||
{ RIG_FUNC_DSQL, "DSQL" },
|
||||
{ RIG_FUNC_AFLT, "AFLT" },
|
||||
{ RIG_FUNC_ANL, "ANL" },
|
||||
{ RIG_FUNC_BC2, "BC2" },
|
||||
{ RIG_FUNC_DUAL_WATCH, "DUAL_WATCH"},
|
||||
{ RIG_FUNC_DIVERSITY, "DIVERSITY"},
|
||||
{ RIG_FUNC_CSQL, "CSQL" },
|
||||
{ RIG_FUNC_SCEN, "SCEN" },
|
||||
{ RIG_FUNC_TRANSCEIVE, "TRANSCEIVE" },
|
||||
{ RIG_FUNC_SPECTRUM, "SPECTRUM" },
|
||||
{ RIG_FUNC_SPECTRUM_HOLD, "SPECTRUM_HOLD" },
|
||||
{ RIG_FUNC_NONE, "" },
|
||||
};
|
||||
|
||||
static struct
|
||||
{
|
||||
quint64 level;
|
||||
const char* str;
|
||||
} rig_level_str[] =
|
||||
{
|
||||
{ RIG_LEVEL_PREAMP, "PREAMP" },
|
||||
{ RIG_LEVEL_ATT, "ATT" },
|
||||
{ RIG_LEVEL_VOXDELAY, "VOXDELAY" },
|
||||
{ RIG_LEVEL_AF, "AF" },
|
||||
{ RIG_LEVEL_RF, "RF" },
|
||||
{ RIG_LEVEL_SQL, "SQL" },
|
||||
{ RIG_LEVEL_IF, "IF" },
|
||||
{ RIG_LEVEL_APF, "APF" },
|
||||
{ RIG_LEVEL_NR, "NR" },
|
||||
{ RIG_LEVEL_PBT_IN, "PBT_IN" },
|
||||
{ RIG_LEVEL_PBT_OUT, "PBT_OUT" },
|
||||
{ RIG_LEVEL_CWPITCH, "CWPITCH" },
|
||||
{ RIG_LEVEL_RFPOWER, "RFPOWER" },
|
||||
{ RIG_LEVEL_MICGAIN, "MICGAIN" },
|
||||
{ RIG_LEVEL_KEYSPD, "KEYSPD" },
|
||||
{ RIG_LEVEL_NOTCHF, "NOTCHF" },
|
||||
{ RIG_LEVEL_COMP, "COMP" },
|
||||
{ RIG_LEVEL_AGC, "AGC" },
|
||||
{ RIG_LEVEL_BKINDL, "BKINDL" },
|
||||
{ RIG_LEVEL_BALANCE, "BAL" },
|
||||
{ RIG_LEVEL_METER, "METER" },
|
||||
{ RIG_LEVEL_VOXGAIN, "VOXGAIN" },
|
||||
{ RIG_LEVEL_ANTIVOX, "ANTIVOX" },
|
||||
{ RIG_LEVEL_SLOPE_LOW, "SLOPE_LOW" },
|
||||
{ RIG_LEVEL_SLOPE_HIGH, "SLOPE_HIGH" },
|
||||
{ RIG_LEVEL_BKIN_DLYMS, "BKIN_DLYMS" },
|
||||
{ RIG_LEVEL_RAWSTR, "RAWSTR" },
|
||||
{ RIG_LEVEL_SWR, "SWR" },
|
||||
{ RIG_LEVEL_ALC, "ALC" },
|
||||
{ RIG_LEVEL_STRENGTH, "STRENGTH" },
|
||||
{ RIG_LEVEL_RFPOWER_METER, "RFPOWER_METER" },
|
||||
{ RIG_LEVEL_COMP_METER, "COMP_METER" },
|
||||
{ RIG_LEVEL_VD_METER, "VD_METER" },
|
||||
{ RIG_LEVEL_ID_METER, "ID_METER" },
|
||||
{ RIG_LEVEL_NOTCHF_RAW, "NOTCHF_RAW" },
|
||||
{ RIG_LEVEL_MONITOR_GAIN, "MONITOR_GAIN" },
|
||||
{ RIG_LEVEL_NB, "NB" },
|
||||
{ RIG_LEVEL_RFPOWER_METER_WATTS, "RFPOWER_METER_WATTS" },
|
||||
{ RIG_LEVEL_SPECTRUM_MODE, "SPECTRUM_MODE" },
|
||||
{ RIG_LEVEL_SPECTRUM_SPAN, "SPECTRUM_SPAN" },
|
||||
{ RIG_LEVEL_SPECTRUM_EDGE_LOW, "SPECTRUM_EDGE_LOW" },
|
||||
{ RIG_LEVEL_SPECTRUM_EDGE_HIGH, "SPECTRUM_EDGE_HIGH" },
|
||||
{ RIG_LEVEL_SPECTRUM_SPEED, "SPECTRUM_SPEED" },
|
||||
{ RIG_LEVEL_SPECTRUM_REF, "SPECTRUM_REF" },
|
||||
{ RIG_LEVEL_SPECTRUM_AVG, "SPECTRUM_AVG" },
|
||||
{ RIG_LEVEL_SPECTRUM_ATT, "SPECTRUM_ATT" },
|
||||
{ RIG_LEVEL_TEMP_METER, "TEMP_METER" },
|
||||
{ RIG_LEVEL_NONE, "" },
|
||||
};
|
||||
|
||||
struct cal_table {
|
||||
int size; /*!< number of plots in the table */
|
||||
struct {
|
||||
int raw; /*!< raw (A/D) value, as returned by \a RIG_LEVEL_RAWSTR */
|
||||
int val; /*!< associated value, basically the measured dB value */
|
||||
} table[32]; /*!< table of plots */
|
||||
};
|
||||
|
||||
typedef struct cal_table cal_table_t;
|
||||
|
||||
#define IC7610_STR_CAL { 16, \
|
||||
{ \
|
||||
{ 0, -54 }, /* S0 */ \
|
||||
{ 11, -48 }, \
|
||||
{ 21, -42 }, \
|
||||
{ 34, -36 }, \
|
||||
{ 50, -30 }, \
|
||||
{ 59, -24 }, \
|
||||
{ 75, -18 }, \
|
||||
{ 93, -12 }, \
|
||||
{ 103, -6 }, \
|
||||
{ 124, 0 }, /* S9 */ \
|
||||
{ 145, 10 }, \
|
||||
{ 160, 20 }, \
|
||||
{ 183, 30 }, \
|
||||
{ 204, 40 }, \
|
||||
{ 222, 50 }, \
|
||||
{ 246, 60 } /* S9+60dB */ \
|
||||
} }
|
||||
|
||||
#define IC7850_STR_CAL { 3, \
|
||||
{ \
|
||||
{ 0, -54 }, /* S0 */ \
|
||||
{ 120, 0 }, /* S9 */ \
|
||||
{ 241, 60 } /* S9+60 */ \
|
||||
} }
|
||||
|
||||
#define IC7300_STR_CAL { 7, \
|
||||
{ \
|
||||
{ 0, -54 }, \
|
||||
{ 10, -48 }, \
|
||||
{ 30, -36 }, \
|
||||
{ 60, -24 }, \
|
||||
{ 90, -12 }, \
|
||||
{ 120, 0 }, \
|
||||
{ 241, 64 } \
|
||||
} }
|
||||
|
||||
class rigCtlD : public QTcpServer
|
||||
{
|
||||
Q_OBJECT
|
||||
|
@ -33,6 +378,31 @@ signals:
|
|||
void setFrequency(freqt freq);
|
||||
void setPTT(bool state);
|
||||
void setMode(unsigned char mode, unsigned char modeFilter);
|
||||
void setDataMode(bool dataOn, unsigned char modeFilter);
|
||||
void setVFO(unsigned char vfo);
|
||||
void setSplit(unsigned char split);
|
||||
void setDuplexMode(duplexMode dm);
|
||||
|
||||
// Power
|
||||
void sendPowerOn();
|
||||
void sendPowerOff();
|
||||
|
||||
// Att/preamp
|
||||
void setAttenuator(unsigned char att);
|
||||
void setPreamp(unsigned char pre);
|
||||
|
||||
//Level set
|
||||
void setRfGain(unsigned char level);
|
||||
void setAfGain(unsigned char level);
|
||||
void setSql(unsigned char level);
|
||||
void setMicGain(unsigned char);
|
||||
void setCompLevel(unsigned char);
|
||||
void setTxPower(unsigned char);
|
||||
void setMonitorLevel(unsigned char);
|
||||
void setVoxGain(unsigned char);
|
||||
void setAntiVoxGain(unsigned char);
|
||||
void setSpectrumRefLevel(int);
|
||||
|
||||
|
||||
public slots:
|
||||
virtual void incomingConnection(qintptr socketDescriptor);
|
||||
|
@ -67,14 +437,17 @@ protected:
|
|||
QString commandBuffer;
|
||||
|
||||
private:
|
||||
void dumpCaps(QString sep);
|
||||
rigCapabilities rigCaps;
|
||||
rigStateStruct* rigState = Q_NULLPTR;
|
||||
rigCtlD* parent;
|
||||
QString getMode(unsigned char mode, bool datamode);
|
||||
unsigned char getMode(QString modeString);
|
||||
QString getFilter(unsigned char mode, unsigned char filter);
|
||||
|
||||
QString generateFreqRange(bandType band);
|
||||
unsigned char getAntennas();
|
||||
quint64 getRadioModes();
|
||||
QString getAntName(unsigned char ant);
|
||||
int getCalibratedValue(unsigned char meter,cal_table_t cal);
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -90,10 +90,9 @@ model_kind determineRadioModel(unsigned char rigID);
|
|||
|
||||
struct rigCapabilities {
|
||||
model_kind model;
|
||||
|
||||
quint8 civ;
|
||||
quint8 modelID;
|
||||
|
||||
int rigctlModel;
|
||||
QString modelName;
|
||||
|
||||
bool hasLan; // OEM ethernet or wifi connection
|
||||
|
|
100
wfmain.cpp
100
wfmain.cpp
|
@ -175,13 +175,6 @@ void wfmain::openRig()
|
|||
qDebug(logSystem()) << "Remote host name specified by user: " << hostCL;
|
||||
}
|
||||
|
||||
// Start rigctld
|
||||
if (prefs.enableRigCtlD && rigCtl == Q_NULLPTR) {
|
||||
rigCtl = new rigCtlD(this);
|
||||
|
||||
rigCtl->startServer(prefs.rigCtlPort);
|
||||
connect(this, SIGNAL(sendRigCaps(rigCapabilities)), rigCtl, SLOT(receiveRigCaps(rigCapabilities)));
|
||||
}
|
||||
|
||||
makeRig();
|
||||
|
||||
|
@ -303,6 +296,7 @@ void wfmain::rigConnections()
|
|||
connect(this, SIGNAL(getSpectrumRefLevel()), rig, SLOT(getSpectrumRefLevel()));
|
||||
connect(this, SIGNAL(getModInputLevel(rigInput)), rig, SLOT(getModInputLevel(rigInput)));
|
||||
|
||||
|
||||
// Levels: Set:
|
||||
connect(this, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char)));
|
||||
connect(this, SIGNAL(setAfGain(unsigned char)), rig, SLOT(setAfGain(unsigned char)));
|
||||
|
@ -313,7 +307,7 @@ void wfmain::rigConnections()
|
|||
connect(this, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
|
||||
connect(this, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
|
||||
connect(this, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
|
||||
connect(this, SIGNAL(setModLevel(rigInput,unsigned char)), rig, SLOT(setModInputLevel(rigInput,unsigned char)));
|
||||
connect(this, SIGNAL(setModLevel(rigInput, unsigned char)), rig, SLOT(setModInputLevel(rigInput, unsigned char)));
|
||||
|
||||
// Levels: handle return on query:
|
||||
connect(rig, SIGNAL(haveRfGain(unsigned char)), this, SLOT(receiveRfGain(unsigned char)));
|
||||
|
@ -405,9 +399,29 @@ void wfmain::makeRig()
|
|||
|
||||
if (rigCtl != Q_NULLPTR) {
|
||||
connect(rig, SIGNAL(stateInfo(rigStateStruct*)), rigCtl, SLOT(receiveStateInfo(rigStateStruct*)));
|
||||
connect(this, SIGNAL(requestRigState()), rig, SLOT(sendState()));
|
||||
connect(rigCtl, SIGNAL(setFrequency(freqt)), rig, SLOT(setFrequency(freqt)));
|
||||
connect(rigCtl, SIGNAL(setMode(unsigned char, unsigned char)), rig, SLOT(setMode(unsigned char, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setDataMode(bool, unsigned char)), rig, SLOT(setDataMode(bool, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setPTT(bool)), rig, SLOT(setPTT(bool)));
|
||||
connect(rigCtl, SIGNAL(sendPowerOn()), rig, SLOT(powerOn()));
|
||||
connect(rigCtl, SIGNAL(sendPowerOff()), rig, SLOT(powerOff()));
|
||||
|
||||
connect(rigCtl, SIGNAL(setAttenuator(unsigned char)), rig, SLOT(setAttenuator(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setPreamp(unsigned char)), rig, SLOT(setPreamp(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setDuplexMode(duplexMode)), rig, SLOT(setDuplexMode(duplexMode)));
|
||||
|
||||
// Levels: Set:
|
||||
connect(rigCtl, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAfGain(unsigned char)), rig, SLOT(setAfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSql(unsigned char)), rig, SLOT(setSquelch(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setTxPower(unsigned char)), rig, SLOT(setTxPower(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMicGain(unsigned char)), rig, SLOT(setMicGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMonitorLevel(unsigned char)), rig, SLOT(setMonitorLevel(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -425,7 +439,7 @@ void wfmain::removeRig()
|
|||
|
||||
delete rigThread;
|
||||
delete rig;
|
||||
|
||||
rig = Q_NULLPTR;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1367,7 +1381,11 @@ void wfmain::loadSettings()
|
|||
ui->connectBtn->setEnabled(true);
|
||||
|
||||
prefs.enableRigCtlD = settings->value("EnableRigCtlD", defPrefs.enableRigCtlD).toBool();
|
||||
ui->enableRigctldChk->setChecked(prefs.enableRigCtlD);
|
||||
prefs.rigCtlPort = settings->value("RigCtlPort", defPrefs.rigCtlPort).toInt();
|
||||
ui->rigctldPortTxt->setText(QString("%1").arg(prefs.rigCtlPort));
|
||||
// Call the function to start rigctld if enabled.
|
||||
on_enableRigctldChk_clicked(prefs.enableRigCtlD);
|
||||
|
||||
udpPrefs.ipAddress = settings->value("IPAddress", udpDefPrefs.ipAddress).toString();
|
||||
ui->ipAddressTxt->setEnabled(ui->lanEnableBtn->isChecked());
|
||||
|
@ -2227,12 +2245,12 @@ void wfmain::setAppTheme(bool isCustom)
|
|||
#ifndef Q_OS_LINUX
|
||||
QFile f(":"+prefs.stylesheetPath); // built-in resource
|
||||
#else
|
||||
QFile f("/usr/share/wfview/stylesheets/" + prefs.stylesheetPath);
|
||||
QFile f(PREFIX "/share/wfview/" + prefs.stylesheetPath);
|
||||
#endif
|
||||
if (!f.exists())
|
||||
{
|
||||
printf("Unable to set stylesheet, file not found\n");
|
||||
printf("Tried to load: [%s]\n", QString( QString("/usr/share/wfview/stylesheets/") + prefs.stylesheetPath).toStdString().c_str() );
|
||||
printf("Tried to load: [%s]\n", f.fileName().toStdString().c_str() );
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -3928,9 +3946,6 @@ void wfmain::on_bandGenbtn_clicked()
|
|||
void wfmain::on_aboutBtn_clicked()
|
||||
{
|
||||
abtBox->show();
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
void wfmain::on_fStoBtn_clicked()
|
||||
|
@ -5250,6 +5265,63 @@ void wfmain::on_meter2selectionCombo_activated(int index)
|
|||
(void)index;
|
||||
}
|
||||
|
||||
void wfmain::on_enableRigctldChk_clicked(bool checked)
|
||||
{
|
||||
if (rigCtl != Q_NULLPTR)
|
||||
{
|
||||
rigCtl->disconnect();
|
||||
delete rigCtl;
|
||||
rigCtl = Q_NULLPTR;
|
||||
}
|
||||
|
||||
if (checked) {
|
||||
// Start rigctld
|
||||
rigCtl = new rigCtlD(this);
|
||||
rigCtl->startServer(prefs.rigCtlPort);
|
||||
connect(this, SIGNAL(sendRigCaps(rigCapabilities)), rigCtl, SLOT(receiveRigCaps(rigCapabilities)));
|
||||
if (rig != Q_NULLPTR) {
|
||||
// We are already connected to a rig.
|
||||
connect(rig, SIGNAL(stateInfo(rigStateStruct*)), rigCtl, SLOT(receiveStateInfo(rigStateStruct*)));
|
||||
connect(rigCtl, SIGNAL(setFrequency(freqt)), rig, SLOT(setFrequency(freqt)));
|
||||
connect(rigCtl, SIGNAL(setMode(unsigned char, unsigned char)), rig, SLOT(setMode(unsigned char, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setDataMode(bool, unsigned char)), rig, SLOT(setDataMode(bool, unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setPTT(bool)), rig, SLOT(setPTT(bool)));
|
||||
connect(rigCtl, SIGNAL(sendPowerOn()), rig, SLOT(powerOn()));
|
||||
connect(rigCtl, SIGNAL(sendPowerOff()), rig, SLOT(powerOff()));
|
||||
|
||||
connect(rigCtl, SIGNAL(setAttenuator(unsigned char)), rig, SLOT(setAttenuator(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setPreamp(unsigned char)), rig, SLOT(setPreamp(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setDuplexMode(duplexMode)), rig, SLOT(setDuplexMode(duplexMode)));
|
||||
|
||||
// Levels: Set:
|
||||
connect(rigCtl, SIGNAL(setRfGain(unsigned char)), rig, SLOT(setRfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAfGain(unsigned char)), rig, SLOT(setAfGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSql(unsigned char)), rig, SLOT(setSquelch(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setTxPower(unsigned char)), rig, SLOT(setTxPower(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMicGain(unsigned char)), rig, SLOT(setMicGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setMonitorLevel(unsigned char)), rig, SLOT(setMonitorLevel(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setVoxGain(unsigned char)), rig, SLOT(setVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setAntiVoxGain(unsigned char)), rig, SLOT(setAntiVoxGain(unsigned char)));
|
||||
connect(rigCtl, SIGNAL(setSpectrumRefLevel(int)), rig, SLOT(setSpectrumRefLevel(int)));
|
||||
|
||||
emit sendRigCaps(rigCaps);
|
||||
emit requestRigState();
|
||||
}
|
||||
}
|
||||
prefs.enableRigCtlD = checked;
|
||||
}
|
||||
|
||||
void wfmain::on_rigctldPortTxt_editingFinished()
|
||||
{
|
||||
|
||||
bool okconvert = false;
|
||||
unsigned int port = ui->rigctldPortTxt->text().toUInt(&okconvert);
|
||||
if (okconvert)
|
||||
{
|
||||
prefs.rigCtlPort = port;
|
||||
}
|
||||
}
|
||||
|
||||
// --- DEBUG FUNCTION ---
|
||||
void wfmain::on_debugBtn_clicked()
|
||||
{
|
||||
|
|
5
wfmain.h
5
wfmain.h
|
@ -153,6 +153,7 @@ signals:
|
|||
void initServer();
|
||||
void sendServerConfig(SERVERCONFIG conf);
|
||||
void sendRigCaps(rigCapabilities caps);
|
||||
void requestRigState();
|
||||
|
||||
private slots:
|
||||
void updateSizes(int tabIndex);
|
||||
|
@ -472,6 +473,10 @@ private slots:
|
|||
|
||||
void on_meter2selectionCombo_activated(int index);
|
||||
|
||||
void on_enableRigctldChk_clicked(bool checked);
|
||||
|
||||
void on_rigctldPortTxt_editingFinished();
|
||||
|
||||
private:
|
||||
Ui::wfmain *ui;
|
||||
void closeEvent(QCloseEvent *event);
|
||||
|
|
35
wfmain.ui
35
wfmain.ui
|
@ -2232,7 +2232,7 @@
|
|||
<widget class="QComboBox" name="meter2selectionCombo"/>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
|
@ -2410,6 +2410,39 @@
|
|||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="enableRigctldChk">
|
||||
<property name="layoutDirection">
|
||||
<enum>Qt::RightToLeft</enum>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Enable RigCtld</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="text">
|
||||
<string>Port</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="rigctldPortTxt"/>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="vspLabel">
|
||||
<property name="text">
|
||||
|
|
25
wfview.pro
25
wfview.pro
|
@ -38,6 +38,12 @@ equals(QT_ARCH, arm): DEFINES += USE_NEON
|
|||
DEFINES += OUTSIDE_SPEEX
|
||||
DEFINES += RANDOM_PREFIX=wf
|
||||
|
||||
isEmpty(PREFIX) {
|
||||
PREFIX = /usr/local
|
||||
}
|
||||
|
||||
DEFINES += PREFIX=\\\"$$PREFIX\\\"
|
||||
|
||||
# Choose audio system, uses QTMultimedia if both are commented out.
|
||||
# DEFINES += RTAUDIO
|
||||
# DEFINES += PORTAUDIO
|
||||
|
@ -74,18 +80,25 @@ win32:DEFINES += UNAME=\\\"build\\\"
|
|||
RESOURCES += qdarkstyle/style.qrc \
|
||||
resources/resources.qrc
|
||||
|
||||
unix:target.path = $$PREFIX/bin
|
||||
INSTALLS += target
|
||||
|
||||
# Why doesn't this seem to do anything?
|
||||
DISTFILES += resources/wfview.png \
|
||||
resources/install.sh
|
||||
DISTFILES += resources/wfview.desktop
|
||||
|
||||
linux:QMAKE_POST_LINK += cp ../wfview/resources/wfview.png .;
|
||||
linux:QMAKE_POST_LINK += cp ../wfview/resources/wfview.desktop .;
|
||||
linux:QMAKE_POST_LINK += cp ../wfview/resources/install.sh .;
|
||||
linux:QMAKE_POST_LINK += cp -r ../wfview/qdarkstyle .;
|
||||
linux:QMAKE_POST_LINK += chmod 755 install.sh;
|
||||
linux:QMAKE_POST_LINK += echo; echo; echo "Run install.sh as root from the build directory to install."; echo; echo;
|
||||
unix:applications.files = resources/wfview.desktop
|
||||
unix:applications.path = $$PREFIX/share/applications
|
||||
INSTALLS += applications
|
||||
|
||||
unix:pixmaps.files = resources/wfview.png
|
||||
unix:pixmaps.path = $$PREFIX/share/pixmaps
|
||||
INSTALLS += pixmaps
|
||||
|
||||
unix:stylesheets.files = qdarkstyle
|
||||
unix:stylesheets.path = $$PREFIX/share/wfview
|
||||
INSTALLS += stylesheets
|
||||
|
||||
# Do not do this, it will hang on start:
|
||||
# CONFIG(release, debug|release):DEFINES += QT_NO_DEBUG_OUTPUT
|
||||
|
|
|
@ -57,6 +57,9 @@
|
|||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="aboutbox.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="audiohandler.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
|
@ -108,6 +111,9 @@
|
|||
<ClCompile Include="satellitesetup.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="transceiveradjustments.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="udphandler.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
|
@ -122,12 +128,18 @@
|
|||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<QtMoc Include="aboutbox.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</QtMoc>
|
||||
<ClInclude Include="resampler\arch.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<QtMoc Include="audiohandler.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</QtMoc>
|
||||
<ClInclude Include="audiotaper.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<QtMoc Include="calibrationwindow.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</QtMoc>
|
||||
|
@ -182,6 +194,9 @@
|
|||
<ClInclude Include="resampler\speex_resampler.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<QtMoc Include="transceiveradjustments.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</QtMoc>
|
||||
<QtMoc Include="udphandler.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</QtMoc>
|
||||
|
@ -207,6 +222,8 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
<CustomBuild Include="debug\moc_predefs.h.cbt">
|
||||
<Filter>Generated Files</Filter>
|
||||
</CustomBuild>
|
||||
|
@ -239,6 +256,10 @@
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -246,6 +267,9 @@
|
|||
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<QtUic Include="aboutbox.ui">
|
||||
<Filter>Form Files</Filter>
|
||||
</QtUic>
|
||||
<QtUic Include="calibrationwindow.ui">
|
||||
<Filter>Form Files</Filter>
|
||||
</QtUic>
|
||||
|
@ -255,6 +279,9 @@
|
|||
<QtUic Include="satellitesetup.ui">
|
||||
<Filter>Form Files</Filter>
|
||||
</QtUic>
|
||||
<QtUic Include="transceiveradjustments.ui">
|
||||
<Filter>Form Files</Filter>
|
||||
</QtUic>
|
||||
<QtUic Include="udpserversetup.ui">
|
||||
<Filter>Form Files</Filter>
|
||||
</QtUic>
|
||||
|
|
Ładowanie…
Reference in New Issue