kopia lustrzana https://github.com/AlexandreRouma/SDRPlusPlus
more work on the rigctl client update
rodzic
a8e6f24b29
commit
711ed7711f
|
@ -334,6 +334,10 @@ private:
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Save frequencies
|
||||||
|
lastRigctlFreq = rigctlFreq;
|
||||||
|
lastCenterFreq = centerFreq;
|
||||||
|
|
||||||
// Wait for the time interval
|
// Wait for the time interval
|
||||||
std::this_thread::sleep_for(std::chrono::milliseconds(interval));
|
std::this_thread::sleep_for(std::chrono::milliseconds(interval));
|
||||||
}
|
}
|
||||||
|
@ -341,11 +345,9 @@ private:
|
||||||
|
|
||||||
void mirrorWorker() {
|
void mirrorWorker() {
|
||||||
int64_t lastRigctlFreq = -1;
|
int64_t lastRigctlFreq = -1;
|
||||||
int64_t lastCenterFreq = -1;
|
int64_t lastFreq = -1;
|
||||||
int64_t lastVFOFreq = -1;
|
|
||||||
int64_t rigctlFreq;
|
int64_t rigctlFreq;
|
||||||
int64_t centerFreq;
|
int64_t freq;
|
||||||
int64_t vfoFreq;
|
|
||||||
int lastRigctlMode = -1;
|
int lastRigctlMode = -1;
|
||||||
int lastVFOMode = -1;
|
int lastVFOMode = -1;
|
||||||
int rigctlMode;
|
int rigctlMode;
|
||||||
|
@ -357,19 +359,22 @@ private:
|
||||||
// Get the current rigctl frequency
|
// Get the current rigctl frequency
|
||||||
rigctlFreq = (int64_t)client->getFreq();
|
rigctlFreq = (int64_t)client->getFreq();
|
||||||
|
|
||||||
// Get the current center frequency
|
|
||||||
centerFreq = (int64_t)gui::waterfall.getCenterFrequency();
|
|
||||||
|
|
||||||
// Get the current VFO frequency if there is a VFO
|
|
||||||
// TODO
|
|
||||||
|
|
||||||
// Get the rigctl and VFO modes
|
// Get the rigctl and VFO modes
|
||||||
if (!selectedVFO.empty() && syncMode && vfoIsRadio) {
|
if (selectedVFO.empty()) {
|
||||||
// Get the current rigctl mode
|
// Get the VFO frequency
|
||||||
// rigctlMode = client->getMode();
|
// TODO
|
||||||
|
|
||||||
// Get the current VFO mode
|
// Get the mode if needed
|
||||||
core::modComManager.callInterface(selectedVFO, RADIO_IFACE_CMD_GET_MODE, NULL, &vfoMode);
|
if (syncMode && vfoIsRadio) {
|
||||||
|
// Get the current rigctl mode
|
||||||
|
// rigctlMode = client->getMode();
|
||||||
|
|
||||||
|
// Get the current VFO mode
|
||||||
|
core::modComManager.callInterface(selectedVFO, RADIO_IFACE_CMD_GET_MODE, NULL, &vfoMode);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
freq = (int64_t)gui::waterfall.getCenterFrequency();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (const std::exception& e) {
|
catch (const std::exception& e) {
|
||||||
|
@ -384,6 +389,12 @@ private:
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Save modes and frequencies
|
||||||
|
lastRigctlFreq = rigctlFreq;
|
||||||
|
lastFreq = freq;
|
||||||
|
lastRigctlMode = rigctlMode;
|
||||||
|
lastVFOMode = vfoMode;
|
||||||
|
|
||||||
// Wait for the time interval
|
// Wait for the time interval
|
||||||
std::this_thread::sleep_for(std::chrono::milliseconds(interval));
|
std::this_thread::sleep_for(std::chrono::milliseconds(interval));
|
||||||
}
|
}
|
||||||
|
|
Ładowanie…
Reference in New Issue