Fix 32 bit overflow in SCPI commands
This commit is contained in:
parent
8972af3f53
commit
399ef3fd5e
@ -69,8 +69,8 @@ void Generator::updateDevice()
|
|||||||
void Generator::setupSCPI()
|
void Generator::setupSCPI()
|
||||||
{
|
{
|
||||||
add(new SCPICommand("FREQuency", [=](QStringList params) -> QString {
|
add(new SCPICommand("FREQuency", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
central->setFrequency(newval);
|
central->setFrequency(newval);
|
||||||
@ -92,8 +92,8 @@ void Generator::setupSCPI()
|
|||||||
return QString::number(central->getDeviceStatus().cdbm_level / 100.0);
|
return QString::number(central->getDeviceStatus().cdbm_level / 100.0);
|
||||||
}));
|
}));
|
||||||
add(new SCPICommand("PORT", [=](QStringList params) -> QString {
|
add(new SCPICommand("PORT", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval) || newval > 2) {
|
if(!SCPI::paramToULongLong(params, 0, newval) || newval > 2) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
central->setPort(newval);
|
central->setPort(newval);
|
||||||
|
@ -758,8 +758,8 @@ void SpectrumAnalyzer::SetupSCPI()
|
|||||||
auto scpi_freq = new SCPINode("FREQuency");
|
auto scpi_freq = new SCPINode("FREQuency");
|
||||||
SCPINode::add(scpi_freq);
|
SCPINode::add(scpi_freq);
|
||||||
scpi_freq->add(new SCPICommand("SPAN", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("SPAN", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetSpan(newval);
|
SetSpan(newval);
|
||||||
@ -769,8 +769,8 @@ void SpectrumAnalyzer::SetupSCPI()
|
|||||||
return QString::number(settings.f_stop - settings.f_start);
|
return QString::number(settings.f_stop - settings.f_start);
|
||||||
}));
|
}));
|
||||||
scpi_freq->add(new SCPICommand("START", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("START", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetStartFreq(newval);
|
SetStartFreq(newval);
|
||||||
@ -780,8 +780,8 @@ void SpectrumAnalyzer::SetupSCPI()
|
|||||||
return QString::number(settings.f_start);
|
return QString::number(settings.f_start);
|
||||||
}));
|
}));
|
||||||
scpi_freq->add(new SCPICommand("CENTer", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("CENTer", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetCenterFreq(newval);
|
SetCenterFreq(newval);
|
||||||
@ -791,8 +791,8 @@ void SpectrumAnalyzer::SetupSCPI()
|
|||||||
return QString::number((settings.f_start + settings.f_stop)/2);
|
return QString::number((settings.f_start + settings.f_stop)/2);
|
||||||
}));
|
}));
|
||||||
scpi_freq->add(new SCPICommand("STOP", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("STOP", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetStopFreq(newval);
|
SetStopFreq(newval);
|
||||||
@ -809,8 +809,8 @@ void SpectrumAnalyzer::SetupSCPI()
|
|||||||
auto scpi_acq = new SCPINode("ACQuisition");
|
auto scpi_acq = new SCPINode("ACQuisition");
|
||||||
SCPINode::add(scpi_acq);
|
SCPINode::add(scpi_acq);
|
||||||
scpi_acq->add(new SCPICommand("RBW", [=](QStringList params) -> QString {
|
scpi_acq->add(new SCPICommand("RBW", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetRBW(newval);
|
SetRBW(newval);
|
||||||
@ -873,8 +873,8 @@ void SpectrumAnalyzer::SetupSCPI()
|
|||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
scpi_acq->add(new SCPICommand("AVG", [=](QStringList params) -> QString {
|
scpi_acq->add(new SCPICommand("AVG", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetAveraging(newval);
|
SetAveraging(newval);
|
||||||
|
@ -1142,8 +1142,8 @@ void VNA::SetupSCPI()
|
|||||||
auto scpi_freq = new SCPINode("FREQuency");
|
auto scpi_freq = new SCPINode("FREQuency");
|
||||||
SCPINode::add(scpi_freq);
|
SCPINode::add(scpi_freq);
|
||||||
scpi_freq->add(new SCPICommand("SPAN", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("SPAN", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetSpan(newval);
|
SetSpan(newval);
|
||||||
@ -1153,8 +1153,8 @@ void VNA::SetupSCPI()
|
|||||||
return QString::number(settings.Freq.stop - settings.Freq.start);
|
return QString::number(settings.Freq.stop - settings.Freq.start);
|
||||||
}));
|
}));
|
||||||
scpi_freq->add(new SCPICommand("START", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("START", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetStartFreq(newval);
|
SetStartFreq(newval);
|
||||||
@ -1164,8 +1164,8 @@ void VNA::SetupSCPI()
|
|||||||
return QString::number(settings.Freq.start);
|
return QString::number(settings.Freq.start);
|
||||||
}));
|
}));
|
||||||
scpi_freq->add(new SCPICommand("CENTer", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("CENTer", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetCenterFreq(newval);
|
SetCenterFreq(newval);
|
||||||
@ -1175,8 +1175,8 @@ void VNA::SetupSCPI()
|
|||||||
return QString::number((settings.Freq.start + settings.Freq.stop)/2);
|
return QString::number((settings.Freq.start + settings.Freq.stop)/2);
|
||||||
}));
|
}));
|
||||||
scpi_freq->add(new SCPICommand("STOP", [=](QStringList params) -> QString {
|
scpi_freq->add(new SCPICommand("STOP", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetStopFreq(newval);
|
SetStopFreq(newval);
|
||||||
@ -1217,8 +1217,8 @@ void VNA::SetupSCPI()
|
|||||||
auto scpi_acq = new SCPINode("ACQuisition");
|
auto scpi_acq = new SCPINode("ACQuisition");
|
||||||
SCPINode::add(scpi_acq);
|
SCPINode::add(scpi_acq);
|
||||||
scpi_acq->add(new SCPICommand("IFBW", [=](QStringList params) -> QString {
|
scpi_acq->add(new SCPICommand("IFBW", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetIFBandwidth(newval);
|
SetIFBandwidth(newval);
|
||||||
@ -1228,8 +1228,8 @@ void VNA::SetupSCPI()
|
|||||||
return QString::number(settings.bandwidth);
|
return QString::number(settings.bandwidth);
|
||||||
}));
|
}));
|
||||||
scpi_acq->add(new SCPICommand("POINTS", [=](QStringList params) -> QString {
|
scpi_acq->add(new SCPICommand("POINTS", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetPoints(newval);
|
SetPoints(newval);
|
||||||
@ -1239,8 +1239,8 @@ void VNA::SetupSCPI()
|
|||||||
return QString::number(settings.npoints);
|
return QString::number(settings.npoints);
|
||||||
}));
|
}));
|
||||||
scpi_acq->add(new SCPICommand("AVG", [=](QStringList params) -> QString {
|
scpi_acq->add(new SCPICommand("AVG", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetAveraging(newval);
|
SetAveraging(newval);
|
||||||
@ -1269,8 +1269,8 @@ void VNA::SetupSCPI()
|
|||||||
return QString::number(settings.Freq.excitation_power);
|
return QString::number(settings.Freq.excitation_power);
|
||||||
}));
|
}));
|
||||||
scpi_stim->add(new SCPICommand("FREQuency", [=](QStringList params) -> QString {
|
scpi_stim->add(new SCPICommand("FREQuency", [=](QStringList params) -> QString {
|
||||||
unsigned long newval;
|
unsigned long long newval;
|
||||||
if(!SCPI::paramToULong(params, 0, newval)) {
|
if(!SCPI::paramToULongLong(params, 0, newval)) {
|
||||||
return "ERROR";
|
return "ERROR";
|
||||||
} else {
|
} else {
|
||||||
SetPowerSweepFrequency(newval);
|
SetPowerSweepFrequency(newval);
|
||||||
|
@ -43,13 +43,13 @@ bool SCPI::paramToDouble(QStringList params, int index, double &dest)
|
|||||||
return okay;
|
return okay;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SCPI::paramToULong(QStringList params, int index, unsigned long &dest)
|
bool SCPI::paramToULongLong(QStringList params, int index, unsigned long long &dest)
|
||||||
{
|
{
|
||||||
if(index >= params.size()) {
|
if(index >= params.size()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
bool okay;
|
bool okay;
|
||||||
dest = params[index].toULong(&okay);
|
dest = params[index].toULongLong(&okay);
|
||||||
return okay;
|
return okay;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ public:
|
|||||||
static QString alternateName(QString name);
|
static QString alternateName(QString name);
|
||||||
|
|
||||||
static bool paramToDouble(QStringList params, int index, double &dest);
|
static bool paramToDouble(QStringList params, int index, double &dest);
|
||||||
static bool paramToULong(QStringList params, int index, unsigned long &dest);
|
static bool paramToULongLong(QStringList params, int index, unsigned long long &dest);
|
||||||
static bool paramToLong(QStringList params, int index, long &dest);
|
static bool paramToLong(QStringList params, int index, long &dest);
|
||||||
static bool paramToBool(QStringList params, int index, bool &dest);
|
static bool paramToBool(QStringList params, int index, bool &dest);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user