signed vs unsigned and meter math

merge-requests/2/head
Elliott Liggett 2021-02-24 07:56:12 -08:00
rodzic 90d4933d02
commit 7d1e202663
1 zmienionych plików z 9 dodań i 7 usunięć

Wyświetl plik

@ -3104,9 +3104,9 @@ void wfmain::receiveLANGain(unsigned char level)
void wfmain::receiveMeter(meterKind inMeter, unsigned char level)
{
int peak = 0;
int sum=0;
int average=0;
unsigned int peak = 0;
unsigned int sum=0;
unsigned int average=0;
@ -3116,12 +3116,13 @@ void wfmain::receiveMeter(meterKind inMeter, unsigned char level)
SMeterReadings[(smeterPos++)%SMeterReadings.length()] = level;
for(int i=0; i < SMeterReadings.length(); i++)
{
if(SMeterReadings.at(i) > peak)
if((unsigned int)SMeterReadings.at(i) > peak)
peak = SMeterReadings.at(i);
sum += SMeterReadings.at(i);
}
average = sum / SMeterReadings.length();
ui->meterWidget->setLevels(level, peak, average);
ui->meterWidget->update();
//ui->levelIndicator->setValue((int)level);
break;
case meterSWR:
@ -3131,12 +3132,13 @@ void wfmain::receiveMeter(meterKind inMeter, unsigned char level)
powerMeterReadings[(powerMeterPos++)%powerMeterReadings.length()] = level;
for(int i=0; i < powerMeterReadings.length(); i++)
{
if(powerMeterReadings.at(i) > peak)
peak = powerMeterReadings.at(i);
sum += powerMeterReadings.at(i);
if((unsigned int)powerMeterReadings.at(i) > peak)
peak = (unsigned int)powerMeterReadings.at(i);
sum += (unsigned int)powerMeterReadings.at(i);
}
average = sum / powerMeterReadings.length();
ui->meterWidget->setLevels(level, peak, average);
ui->meterWidget->update();
//ui->levelIndicator->setValue((int)level);
break;
case meterALC: