From 115b0ffa5891c7ffe9817ea5d3e7f8be5887a6c6 Mon Sep 17 00:00:00 2001 From: vsonnier Date: Sat, 28 Jan 2017 14:57:27 +0100 Subject: [PATCH] CLEANUP: some compiler and static analysis warnings --- src/AppConfig.cpp | 7 +++--- src/AppFrame.cpp | 9 ++++--- src/AppFrame.h | 12 +++++----- src/modules/modem/ModemAnalog.cpp | 6 ++--- src/modules/modem/ModemDigital.cpp | 2 +- src/modules/modem/analog/ModemFM.cpp | 2 +- src/modules/modem/analog/ModemFMStereo.cpp | 28 +++++++++++----------- src/modules/modem/analog/ModemLSB.cpp | 6 ++--- src/modules/modem/analog/ModemNBFM.cpp | 2 +- src/modules/modem/analog/ModemUSB.cpp | 6 ++--- src/modules/modem/digital/ModemFSK.cpp | 10 ++++---- src/modules/modem/digital/ModemGMSK.cpp | 4 ++-- src/modules/modem/digital/ModemOOK.cpp | 2 +- src/panel/MeterPanel.cpp | 4 ++-- src/process/FFTDataDistributor.cpp | 6 ++--- src/process/FFTDataDistributor.h | 4 +++- src/process/ScopeVisualProcessor.h | 4 ++-- src/process/SpectrumVisualProcessor.cpp | 1 + src/process/VisualProcessor.h | 4 ++-- src/sdr/SDRDeviceInfo.h | 2 +- src/sdr/SDRPostThread.h | 2 +- src/ui/GLPanel.h | 8 +++---- src/ui/UITestCanvas.cpp | 2 +- src/ui/UITestCanvas.h | 2 +- src/ui/UITestContext.cpp | 2 +- src/util/GLFont.h | 4 ++-- src/util/Gradient.cpp | 8 +++---- src/util/Timer.cpp | 2 +- src/visual/GainCanvas.cpp | 2 +- src/visual/GainCanvas.h | 2 +- src/visual/InteractiveCanvas.cpp | 4 ++-- src/visual/InteractiveCanvas.h | 3 ++- src/visual/MeterCanvas.cpp | 2 +- src/visual/MeterCanvas.h | 2 +- src/visual/ModeSelectorCanvas.cpp | 2 +- src/visual/ModeSelectorCanvas.h | 2 +- src/visual/ScopeCanvas.cpp | 2 +- src/visual/ScopeCanvas.h | 2 +- src/visual/SpectrumCanvas.cpp | 2 +- src/visual/SpectrumCanvas.h | 2 +- src/visual/TuningCanvas.cpp | 2 +- src/visual/TuningCanvas.h | 2 +- src/visual/WaterfallCanvas.cpp | 2 +- src/visual/WaterfallCanvas.h | 6 ++--- 44 files changed, 97 insertions(+), 93 deletions(-) diff --git a/src/AppConfig.cpp b/src/AppConfig.cpp index 4c7fc5c..eea6539 100644 --- a/src/AppConfig.cpp +++ b/src/AppConfig.cpp @@ -84,7 +84,7 @@ void DeviceConfig::save(DataNode *node) { std::lock_guard < std::mutex > lock(busy_lock); *node->newChild("id") = deviceId; *node->newChild("name") = deviceName; - *node->newChild("ppm") = (int)ppm.load(); + *node->newChild("ppm") = ppm.load(); *node->newChild("offset") = offset.load(); *node->newChild("sample_rate") = sampleRate.load(); *node->newChild("agc_mode") = agcMode.load()?1:0; @@ -611,12 +611,13 @@ bool AppConfig::load() { } if (cfg.rootNode()->hasAnother("window")) { - int x,y,w,h; - int max,tips,lpm,mpc; + int x = 0 ,y = 0 ,w = 0 ,h = 0; + int max = 0 ,tips = 0 ,lpm = 0 ,mpc = 0; DataNode *win_node = cfg.rootNode()->getNext("window"); if (win_node->hasAnother("w") && win_node->hasAnother("h") && win_node->hasAnother("x") && win_node->hasAnother("y")) { + win_node->getNext("x")->element()->get(x); win_node->getNext("y")->element()->get(y); win_node->getNext("w")->element()->get(w); diff --git a/src/AppFrame.cpp b/src/AppFrame.cpp index 51046f3..b861856 100644 --- a/src/AppFrame.cpp +++ b/src/AppFrame.cpp @@ -66,7 +66,7 @@ AppFrame::AppFrame() : wxBoxSizer *demodScopeTray = new wxBoxSizer(wxVERTICAL); wxBoxSizer *demodTunerTray = new wxBoxSizer(wxHORIZONTAL); - int attribList[] = { WX_GL_RGBA, WX_GL_DOUBLEBUFFER, 0 }; + std::vector attribList = { WX_GL_RGBA, WX_GL_DOUBLEBUFFER, 0 }; //wxGLAttributes attribList; //attribList.PlatformDefaults().RGBA().DoubleBuffer().EndList(); //attribList.PlatformDefaults().MinRGBA(8, 8, 8, 8).DoubleBuffer().Depth(16).EndList(); @@ -104,9 +104,8 @@ AppFrame::AppFrame() : gainSpacerItem = demodTray->AddSpacer(1); gainSpacerItem->Show(false); - std::string modemListArr[] = { "FM", "FMS", "NBFM", "AM", "LSB", "USB", "DSB", "I/Q" }; - std::vector modemList( modemListArr, modemListArr + 8 ); - + std::vector modemList = { "FM", "FMS", "NBFM", "AM", "LSB", "USB", "DSB", "I/Q" }; + #ifdef CUBICSDR_MODEM_EXCLUDE std::string excludeListStr = "" CUBICSDR_MODEM_EXCLUDE; std::vector excludeList = str_explode(",",excludeListStr); @@ -1197,7 +1196,7 @@ void AppFrame::OnMenu(wxCommandEvent& event) { } else if (event.GetId() == wxID_BANDWIDTH_MANUAL_DIALOG) { - int rateHigh, rateLow; + int rateHigh = 0, rateLow = 0; SDRDeviceInfo *dev = wxGetApp().getDevice(); if (dev != nullptr) { diff --git a/src/AppFrame.h b/src/AppFrame.h index 86de65c..a790810 100644 --- a/src/AppFrame.h +++ b/src/AppFrame.h @@ -175,12 +175,12 @@ private: std::map directSamplingMenuItems; wxMenuBar *menuBar; - wxMenu *sampleRateMenu; - wxMenu *displayMenu; - wxMenuItem *agcMenuItem; - wxMenuItem *iqSwapMenuItem; - wxMenuItem *lowPerfMenuItem; - wxMenu *settingsMenu; + wxMenu *sampleRateMenu = nullptr; + wxMenu *displayMenu = nullptr; + wxMenuItem *agcMenuItem = nullptr; + wxMenuItem *iqSwapMenuItem = nullptr; + wxMenuItem *lowPerfMenuItem = nullptr; + wxMenu *settingsMenu = nullptr; SoapySDR::ArgInfoList settingArgs; int settingsIdMax; diff --git a/src/modules/modem/ModemAnalog.cpp b/src/modules/modem/ModemAnalog.cpp index f113dc6..02d65c8 100644 --- a/src/modules/modem/ModemAnalog.cpp +++ b/src/modules/modem/ModemAnalog.cpp @@ -15,7 +15,7 @@ int ModemAnalog::checkSampleRate(long long sampleRate, int /* audioSampleRate */ if (sampleRate < MIN_BANDWIDTH) { return MIN_BANDWIDTH; } - return sampleRate; + return (int)sampleRate; } ModemKit *ModemAnalog::buildKit(long long sampleRate, int audioSampleRate) { @@ -27,7 +27,7 @@ ModemKit *ModemAnalog::buildKit(long long sampleRate, int audioSampleRate) { akit->sampleRate = sampleRate; akit->audioSampleRate = audioSampleRate; akit->audioResampleRatio = double(audioSampleRate) / double(sampleRate); - akit->audioResampler = msresamp_rrrf_create(akit->audioResampleRatio, As); + akit->audioResampler = msresamp_rrrf_create((float)akit->audioResampleRatio, As); return akit; } @@ -85,7 +85,7 @@ void ModemAnalog::buildAudioOutput(ModemKitAnalog *akit, AudioThreadInput *audio } } - msresamp_rrrf_execute(akit->audioResampler, &demodOutputData[0], demodOutputData.size(), &resampledOutputData[0], &numAudioWritten); + msresamp_rrrf_execute(akit->audioResampler, &demodOutputData[0], (int)demodOutputData.size(), &resampledOutputData[0], &numAudioWritten); audioOut->channels = 1; audioOut->sampleRate = akit->audioSampleRate; diff --git a/src/modules/modem/ModemDigital.cpp b/src/modules/modem/ModemDigital.cpp index 5721e68..401d97f 100644 --- a/src/modules/modem/ModemDigital.cpp +++ b/src/modules/modem/ModemDigital.cpp @@ -26,7 +26,7 @@ int ModemDigital::checkSampleRate(long long sampleRate, int /* audioSampleRate * if (sampleRate < MIN_BANDWIDTH) { return MIN_BANDWIDTH; } - return sampleRate; + return (int)sampleRate; } ModemKit *ModemDigital::buildKit(long long sampleRate, int audioSampleRate) { diff --git a/src/modules/modem/analog/ModemFM.cpp b/src/modules/modem/analog/ModemFM.cpp index ebd5c39..da969b8 100644 --- a/src/modules/modem/analog/ModemFM.cpp +++ b/src/modules/modem/analog/ModemFM.cpp @@ -33,7 +33,7 @@ void ModemFM::demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInput *au return; } - freqdem_demodulate_block(demodFM, &input->data[0], bufSize, &demodOutputData[0]); + freqdem_demodulate_block(demodFM, &input->data[0], (int)bufSize, &demodOutputData[0]); buildAudioOutput(fmkit, audioOut, false); } diff --git a/src/modules/modem/analog/ModemFMStereo.cpp b/src/modules/modem/analog/ModemFMStereo.cpp index ac4ed61..e84c49b 100644 --- a/src/modules/modem/analog/ModemFMStereo.cpp +++ b/src/modules/modem/analog/ModemFMStereo.cpp @@ -30,7 +30,7 @@ int ModemFMStereo::checkSampleRate(long long sampleRate, int /* audioSampleRate } else if (sampleRate < 1500) { return 1500; } else { - return sampleRate; + return (int)sampleRate; } } @@ -95,13 +95,13 @@ ModemKit *ModemFMStereo::buildKit(long long sampleRate, int audioSampleRate) { float As = 60.0f; // stop-band attenuation [dB] - kit->audioResampler = msresamp_rrrf_create(kit->audioResampleRatio, As); - kit->stereoResampler = msresamp_rrrf_create(kit->audioResampleRatio, As); + kit->audioResampler = msresamp_rrrf_create((float)kit->audioResampleRatio, As); + kit->stereoResampler = msresamp_rrrf_create((float)kit->audioResampleRatio, As); // Stereo filters / shifters - double firStereoCutoff = 16000.0 / double(audioSampleRate); + float firStereoCutoff = 16000.0f / float(audioSampleRate); // filter transition - float ft = 1000.0f / double(audioSampleRate); + float ft = 1000.0f / float(audioSampleRate); // fractional timing offset float mu = 0.0f; @@ -142,13 +142,13 @@ ModemKit *ModemFMStereo::buildKit(long long sampleRate, int audioSampleRate) { kit->demph = _demph; if (_demph) { - float f = (1.0f / (2.0f * M_PI * double(_demph) * 1e-6)); - float t = 1.0f / (2.0f * M_PI * f); - t = 1.0f / (2.0f * float(audioSampleRate) * tan(1.0f / (2.0f * float(audioSampleRate) * t))); + double f = (1.0 / (2.0 * M_PI * double(_demph) * 1e-6)); + double t = 1.0 / (2.0 * M_PI * f); + t = 1.0 / (2.0 * double(audioSampleRate) * tan(1.0 / (2.0 * double(audioSampleRate) * t))); - float tb = (1.0f + 2.0f * t * float(audioSampleRate)); - float b_demph[2] = { 1.0f / tb, 1.0f / tb }; - float a_demph[2] = { 1.0f, (1.0f - 2.0f * t * float(audioSampleRate)) / tb }; + double tb = (1.0 + 2.0 * t * double(audioSampleRate)); + float b_demph[2] = { (float)(1.0 / tb), (float)(1.0 / tb) }; + float a_demph[2] = { 1.0, (float)((1.0 - 2.0 * t * double(audioSampleRate)) / tb) }; kit->iirDemphL = iirfilt_rrrf_create(b_demph, 2, a_demph, 2); kit->iirDemphR = iirfilt_rrrf_create(b_demph, 2, a_demph, 2); @@ -191,7 +191,7 @@ void ModemFMStereo::demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInp size_t audio_out_size = (size_t)ceil((double) (bufSize) * audio_resample_ratio) + 512; - freqdem_demodulate_block(demodFM, &input->data[0], bufSize, &demodOutputData[0]); + freqdem_demodulate_block(demodFM, &input->data[0], (int)bufSize, &demodOutputData[0]); if (resampledOutputData.size() != audio_out_size) { if (resampledOutputData.capacity() < audio_out_size) { @@ -202,7 +202,7 @@ void ModemFMStereo::demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInp unsigned int numAudioWritten; - msresamp_rrrf_execute(fmkit->audioResampler, &demodOutputData[0], bufSize, &resampledOutputData[0], &numAudioWritten); + msresamp_rrrf_execute(fmkit->audioResampler, &demodOutputData[0], (int)bufSize, &resampledOutputData[0], &numAudioWritten); if (demodStereoData.size() != bufSize) { if (demodStereoData.capacity() < bufSize) { @@ -252,7 +252,7 @@ void ModemFMStereo::demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInp resampledStereoData.resize(audio_out_size); } - msresamp_rrrf_execute(fmkit->stereoResampler, &demodStereoData[0], bufSize, &resampledStereoData[0], &numAudioWritten); + msresamp_rrrf_execute(fmkit->stereoResampler, &demodStereoData[0], (int)bufSize, &resampledStereoData[0], &numAudioWritten); audioOut->channels = 2; if (audioOut->data.capacity() < (numAudioWritten * 2)) { diff --git a/src/modules/modem/analog/ModemLSB.cpp b/src/modules/modem/analog/ModemLSB.cpp index 6011d95..140a90a 100644 --- a/src/modules/modem/analog/ModemLSB.cpp +++ b/src/modules/modem/analog/ModemLSB.cpp @@ -12,7 +12,7 @@ ModemLSB::ModemLSB() : ModemAnalog() { ssbFilt = iirfilt_crcf_create_lowpass(6, 0.25); #endif ssbShift = nco_crcf_create(LIQUID_NCO); - nco_crcf_set_frequency(ssbShift, (2.0 * M_PI) * 0.25); + nco_crcf_set_frequency(ssbShift, (float)((2.0 * M_PI) * 0.25)); c2rFilt = firhilbf_create(5, 90.0); useSignalOutput(true); } @@ -41,9 +41,9 @@ int ModemLSB::checkSampleRate(long long sampleRate, int /* audioSampleRate */) { return MIN_BANDWIDTH; } if (sampleRate % 2 == 0) { - return sampleRate; + return (int)sampleRate; } - return sampleRate+1; + return (int)(sampleRate+1); } int ModemLSB::getDefaultSampleRate() { diff --git a/src/modules/modem/analog/ModemNBFM.cpp b/src/modules/modem/analog/ModemNBFM.cpp index 9952312..fd1b255 100644 --- a/src/modules/modem/analog/ModemNBFM.cpp +++ b/src/modules/modem/analog/ModemNBFM.cpp @@ -33,7 +33,7 @@ void ModemNBFM::demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInput * return; } - freqdem_demodulate_block(demodFM, &input->data[0], bufSize, &demodOutputData[0]); + freqdem_demodulate_block(demodFM, &input->data[0], (unsigned int)bufSize, &demodOutputData[0]); buildAudioOutput(fmkit, audioOut, false); } diff --git a/src/modules/modem/analog/ModemUSB.cpp b/src/modules/modem/analog/ModemUSB.cpp index 665d5c2..f221f2c 100644 --- a/src/modules/modem/analog/ModemUSB.cpp +++ b/src/modules/modem/analog/ModemUSB.cpp @@ -12,7 +12,7 @@ ModemUSB::ModemUSB() : ModemAnalog() { ssbFilt = iirfilt_crcf_create_lowpass(6, 0.25); #endif ssbShift = nco_crcf_create(LIQUID_NCO); - nco_crcf_set_frequency(ssbShift, (2.0f * M_PI) * 0.25f); + nco_crcf_set_frequency(ssbShift, (float)((2.0 * M_PI) * 0.25)); c2rFilt = firhilbf_create(5, 90.0); useSignalOutput(true); } @@ -41,9 +41,9 @@ int ModemUSB::checkSampleRate(long long sampleRate, int /* audioSampleRate */) { return MIN_BANDWIDTH; } if (sampleRate % 2 == 0) { - return sampleRate; + return (int)sampleRate; } - return sampleRate+1; + return (int)(sampleRate+1); } int ModemUSB::getDefaultSampleRate() { diff --git a/src/modules/modem/digital/ModemFSK.cpp b/src/modules/modem/digital/ModemFSK.cpp index 749da5f..d152a8e 100644 --- a/src/modules/modem/digital/ModemFSK.cpp +++ b/src/modules/modem/digital/ModemFSK.cpp @@ -8,7 +8,7 @@ ModemFSK::ModemFSK() : ModemDigital() { // DMR defaults? bps = 1; sps = 9600; - bw = 0.45; + bw = 0.45f; outStream << std::hex; } @@ -17,12 +17,12 @@ ModemBase *ModemFSK::factory() { } int ModemFSK::checkSampleRate(long long sampleRate, int audioSampleRate) { - float minSps = pow(2.0,bps); - float nextSps = (float(sampleRate) / float(sps)); + double minSps = pow(2.0,bps); + double nextSps = (double(sampleRate) / double(sps)); if (nextSps < minSps) { return 2 * bps * sps; } else { - return sampleRate; + return (int)sampleRate; } } @@ -101,7 +101,7 @@ std::string ModemFSK::readSetting(std::string setting) { ModemKit *ModemFSK::buildKit(long long sampleRate, int audioSampleRate) { ModemKitFSK *dkit = new ModemKitFSK; dkit->m = bps; - dkit->k = sampleRate / sps; + dkit->k = (unsigned int)(sampleRate / sps); dkit->bw = bw; dkit->demodFSK = fskdem_create(dkit->m, dkit->k, dkit->bw); diff --git a/src/modules/modem/digital/ModemGMSK.cpp b/src/modules/modem/digital/ModemGMSK.cpp index 4e9870a..c1a79fb 100644 --- a/src/modules/modem/digital/ModemGMSK.cpp +++ b/src/modules/modem/digital/ModemGMSK.cpp @@ -7,7 +7,7 @@ ModemGMSK::ModemGMSK() : ModemDigital() { _sps = 4; _fdelay = 3; - _ebf = 0.3; + _ebf = 0.3f; outStream << std::hex; } @@ -27,7 +27,7 @@ int ModemGMSK::checkSampleRate(long long sampleRate, int audioSampleRate) { if (sampleRate < MIN_BANDWIDTH) { return MIN_BANDWIDTH; } - return sampleRate; + return (int)sampleRate; } int ModemGMSK::getDefaultSampleRate() { diff --git a/src/modules/modem/digital/ModemOOK.cpp b/src/modules/modem/digital/ModemOOK.cpp index 89f8300..fce95a6 100644 --- a/src/modules/modem/digital/ModemOOK.cpp +++ b/src/modules/modem/digital/ModemOOK.cpp @@ -23,7 +23,7 @@ int ModemOOK::checkSampleRate(long long sampleRate, int audioSampleRate) { if (sampleRate < 100) { return 100; } - return sampleRate; + return (int)sampleRate; } void ModemOOK::demodulate(ModemKit *kit, ModemIQData *input, AudioThreadInput *audioOut) { diff --git a/src/panel/MeterPanel.cpp b/src/panel/MeterPanel.cpp index fd36f9b..c3d191f 100644 --- a/src/panel/MeterPanel.cpp +++ b/src/panel/MeterPanel.cpp @@ -42,14 +42,14 @@ MeterPanel::MeterPanel(std::string name, float low, float high, float current) { addChild(&bgPanel); - labelPanel.setSize(1.0, 0.1); + labelPanel.setSize(1.0f, 0.1f); labelPanel.setPosition(0.0, 1.0); labelPanel.setText(name,GLFont::GLFONT_ALIGN_CENTER, GLFont::GLFONT_ALIGN_CENTER, true); labelPanel.setFill(GLPanel::GLPANEL_FILL_NONE); addChild(&labelPanel); - valuePanel.setSize(1.0, 0.1); + valuePanel.setSize(1.0f, 0.1f); valuePanel.setPosition(0.0, -1.0); setValueLabel(std::to_string(int(current))); diff --git a/src/process/FFTDataDistributor.cpp b/src/process/FFTDataDistributor.cpp index 05ad81c..01da328 100644 --- a/src/process/FFTDataDistributor.cpp +++ b/src/process/FFTDataDistributor.cpp @@ -4,7 +4,7 @@ #include "FFTDataDistributor.h" FFTDataDistributor::FFTDataDistributor() : outputBuffers("FFTDataDistributorBuffers"), fftSize(DEFAULT_FFT_SIZE), linesPerSecond(DEFAULT_WATERFALL_LPS), lineRateAccum(0.0) { - bufferedItems = 0; + } void FFTDataDistributor::setFFTSize(unsigned int fftSize) { @@ -60,14 +60,14 @@ void FFTDataDistributor::process() { double lineRateStep = ((double)linesPerSecond * inputTime)/(double)inputLines; if (bufferedItems >= fftSize) { - int numProcessed = 0; + size_t numProcessed = 0; if (lineRateAccum + (lineRateStep * ((double)bufferedItems/(double)fftSize)) < 1.0) { // move along, nothing to see here.. lineRateAccum += (lineRateStep * ((double)bufferedItems/(double)fftSize)); numProcessed = bufferedItems; } else { - for (unsigned int i = 0, iMax = bufferedItems; i < iMax; i += fftSize) { + for (size_t i = 0, iMax = bufferedItems; i < iMax; i += fftSize) { if ((i + fftSize) > iMax) { break; } diff --git a/src/process/FFTDataDistributor.h b/src/process/FFTDataDistributor.h index 570ad7e..d924779 100644 --- a/src/process/FFTDataDistributor.h +++ b/src/process/FFTDataDistributor.h @@ -23,5 +23,7 @@ protected: unsigned int fftSize; unsigned int linesPerSecond; double lineRateAccum; - size_t bufferMax, bufferOffset, bufferedItems; + size_t bufferMax = 0; + size_t bufferOffset = 0; + size_t bufferedItems = 0; }; diff --git a/src/process/ScopeVisualProcessor.h b/src/process/ScopeVisualProcessor.h index fc525a7..c079911 100644 --- a/src/process/ScopeVisualProcessor.h +++ b/src/process/ScopeVisualProcessor.h @@ -10,7 +10,7 @@ class ScopeRenderData: public ReferenceCounter { public: std::vector waveform_points; - ScopePanel::ScopeMode mode; + ScopePanel::ScopeMode mode = ScopePanel::SCOPE_MODE_Y; int inputRate; int sampleRate; int channels; @@ -39,7 +39,7 @@ protected: std::vector fftOutput; fftplan fftPlan; - unsigned int fftSize; + unsigned int fftSize = 0; int desiredInputSize; unsigned int maxScopeSamples; diff --git a/src/process/SpectrumVisualProcessor.cpp b/src/process/SpectrumVisualProcessor.cpp index 2ee6b77..7b02892 100644 --- a/src/process/SpectrumVisualProcessor.cpp +++ b/src/process/SpectrumVisualProcessor.cpp @@ -29,6 +29,7 @@ SpectrumVisualProcessor::SpectrumVisualProcessor() : outputBuffers("SpectrumVisu fft_ceil_ma = fft_ceil_maa = 100.0; fft_floor_ma = fft_floor_maa = 0.0; + fft_floor_peak = 0.0; desiredInputSize.store(0); fft_average_rate = 0.65f; scaleFactor.store(1.0); diff --git a/src/process/VisualProcessor.h b/src/process/VisualProcessor.h index 41daa73..44310ac 100644 --- a/src/process/VisualProcessor.h +++ b/src/process/VisualProcessor.h @@ -87,7 +87,7 @@ protected: // distribute outputs std::lock_guard < std::recursive_mutex > busy_lock(busy_update); - output->setRefCount(outputs.size()); + output->setRefCount((int)outputs.size()); for (outputs_i = outputs.begin(); outputs_i != outputs.end(); outputs_i++) { if (!(*outputs_i)->push(output)) { @@ -96,7 +96,7 @@ protected: } } - ThreadQueue *input; + ThreadQueue *input = nullptr; std::vector *> outputs; typename std::vector *>::iterator outputs_i; diff --git a/src/sdr/SDRDeviceInfo.h b/src/sdr/SDRDeviceInfo.h index 3d76418..cc903c1 100644 --- a/src/sdr/SDRDeviceInfo.h +++ b/src/sdr/SDRDeviceInfo.h @@ -89,7 +89,7 @@ public: SDRRangeMap getGains(int direction, size_t channel); private: - int index; + int index = 0; std::string name, serial, product, manufacturer, tuner; std::string driver, hardware, manual_params; bool timestamps, available, remote, manual; diff --git a/src/sdr/SDRPostThread.h b/src/sdr/SDRPostThread.h index d43c9a1..2f7ad3e 100644 --- a/src/sdr/SDRPostThread.h +++ b/src/sdr/SDRPostThread.h @@ -45,7 +45,7 @@ private: std::vector fpData; std::vector dataOut; std::vector chanCenters; - long long chanBw; + long long chanBw = 0; size_t nRunDemods; std::vector runDemods; diff --git a/src/ui/GLPanel.h b/src/ui/GLPanel.h index 0ada696..94cd7a6 100644 --- a/src/ui/GLPanel.h +++ b/src/ui/GLPanel.h @@ -38,10 +38,10 @@ private: public: typedef enum GLPanelFillType { GLPANEL_FILL_NONE, GLPANEL_FILL_SOLID, GLPANEL_FILL_GRAD_X, GLPANEL_FILL_GRAD_Y, GLPANEL_FILL_GRAD_BAR_X, GLPANEL_FILL_GRAD_BAR_Y } GLPanelFillType; typedef enum GLPanelCoordinateSystem { GLPANEL_Y_DOWN_ZERO_ONE, GLPANEL_Y_UP_ZERO_ONE, GLPANEL_Y_UP, GLPANEL_Y_DOWN } GLPanelCoordinateSystem; - float pos[2]; - float rot[3]; - float size[2]; - float view[2]; + float pos[2] = {0.0f,0.0f}; + float rot[3] = { 0.0f,0.0f,0.0f }; + float size[2] = { 0.0f,0.0f }; + float view[2] = { 0.0f,0.0f }; GLPanelFillType fillType; GLPanelCoordinateSystem coord; float marginPx; diff --git a/src/ui/UITestCanvas.cpp b/src/ui/UITestCanvas.cpp index f49b4c1..9abe7df 100644 --- a/src/ui/UITestCanvas.cpp +++ b/src/ui/UITestCanvas.cpp @@ -27,7 +27,7 @@ EVT_LEAVE_WINDOW(UITestCanvas::OnMouseLeftWindow) EVT_ENTER_WINDOW(UITestCanvas::OnMouseEnterWindow) wxEND_EVENT_TABLE() -UITestCanvas::UITestCanvas(wxWindow *parent, int *dispAttrs) : +UITestCanvas::UITestCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs) { glContext = new UITestContext(this, &wxGetApp().GetContext(this)); diff --git a/src/ui/UITestCanvas.h b/src/ui/UITestCanvas.h index 316a76b..631366a 100644 --- a/src/ui/UITestCanvas.h +++ b/src/ui/UITestCanvas.h @@ -17,7 +17,7 @@ class UITestCanvas: public InteractiveCanvas { public: - UITestCanvas(wxWindow *parent, int *dispAttrs); + UITestCanvas(wxWindow *parent, std::vector dispAttrs); ~UITestCanvas(); private: diff --git a/src/ui/UITestContext.cpp b/src/ui/UITestContext.cpp index 2127377..e8cdd17 100644 --- a/src/ui/UITestContext.cpp +++ b/src/ui/UITestContext.cpp @@ -45,7 +45,7 @@ PrimaryGLContext(canvas, sharedContext), testMeter("TEST",0,100,50) { // testPanel.addChild(&testChildPanel); // testPanel.addChild(&testChildPanel2); // testPanel.addChild(&testChildPanel3); - testMeter.setSize(0.1,0.9); + testMeter.setSize(0.1f,0.9f); testPanel.addChild(&testMeter); } diff --git a/src/util/GLFont.h b/src/util/GLFont.h index 04cf5b7..ff2f50a 100644 --- a/src/util/GLFont.h +++ b/src/util/GLFont.h @@ -18,8 +18,8 @@ public: GLFontStringCache(); int drawlen; int vpx, vpy; - int pxHeight; - float msgWidth; + int pxHeight = 0; + float msgWidth = 0.0f; std::atomic_int gc; std::vector gl_vertices; std::vector gl_uv; diff --git a/src/util/Gradient.cpp b/src/util/Gradient.cpp index 0ac4009..617e19e 100644 --- a/src/util/Gradient.cpp +++ b/src/util/Gradient.cpp @@ -24,19 +24,19 @@ std::vector &Gradient::getBlue() { } void Gradient::generate(unsigned int len) { - unsigned int chunk_size = len / (colors.size() - 1); + size_t chunk_size = len / (colors.size() - 1); - unsigned int p = 0; + size_t p = 0; r_val.resize(len); g_val.resize(len); b_val.resize(len); - for (unsigned int j = 0, jMax = colors.size() - 1; j < jMax; j++) { + for (size_t j = 0, jMax = colors.size() - 1; j < jMax; j++) { if ((chunk_size * (jMax)) < len && (j == jMax - 1)) { chunk_size += len - chunk_size * (jMax); } - for (unsigned int i = 0; i < chunk_size; i++) { + for (size_t i = 0; i < chunk_size; i++) { float idx = (float) (i) / (float) chunk_size; float r1 = colors[j].r; diff --git a/src/util/Timer.cpp b/src/util/Timer.cpp index 11e2cf3..d9d0b37 100644 --- a/src/util/Timer.cpp +++ b/src/util/Timer.cpp @@ -56,7 +56,7 @@ void Timer::unlock() update(); - last_update = system_milliseconds-lock_rate; + last_update = system_milliseconds-(unsigned long)lock_rate; offset += msec_tmp-system_milliseconds; diff --git a/src/visual/GainCanvas.cpp b/src/visual/GainCanvas.cpp index 1087bfe..56661de 100644 --- a/src/visual/GainCanvas.cpp +++ b/src/visual/GainCanvas.cpp @@ -28,7 +28,7 @@ EVT_ENTER_WINDOW(GainCanvas::OnMouseEnterWindow) EVT_MOUSEWHEEL(GainCanvas::OnMouseWheelMoved) wxEND_EVENT_TABLE() -GainCanvas::GainCanvas(wxWindow *parent, int *dispAttrs) : +GainCanvas::GainCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs) { glContext = new PrimaryGLContext(this, &wxGetApp().GetContext(this)); diff --git a/src/visual/GainCanvas.h b/src/visual/GainCanvas.h index 7f71b51..2e7a552 100644 --- a/src/visual/GainCanvas.h +++ b/src/visual/GainCanvas.h @@ -20,7 +20,7 @@ class GainCanvas: public InteractiveCanvas { public: - GainCanvas(wxWindow *parent, int *dispAttrs); + GainCanvas(wxWindow *parent, std::vector dispAttrs); ~GainCanvas(); void setHelpTip(std::string tip); diff --git a/src/visual/InteractiveCanvas.cpp b/src/visual/InteractiveCanvas.cpp index add3938..b18a3ec 100644 --- a/src/visual/InteractiveCanvas.cpp +++ b/src/visual/InteractiveCanvas.cpp @@ -20,8 +20,8 @@ #include -InteractiveCanvas::InteractiveCanvas(wxWindow *parent, int *dispAttrs) : - wxGLCanvas(parent, wxID_ANY, dispAttrs, wxDefaultPosition, wxDefaultSize, +InteractiveCanvas::InteractiveCanvas(wxWindow *parent, std::vector dispAttrs) : + wxGLCanvas(parent, wxID_ANY, dispAttrs.data(), wxDefaultPosition, wxDefaultSize, wxFULL_REPAINT_ON_RESIZE), parent(parent), shiftDown(false), altDown(false), ctrlDown(false), centerFreq(0), bandwidth(0), lastBandwidth(0), isView( false) { mouseTracker.setTarget(this); diff --git a/src/visual/InteractiveCanvas.h b/src/visual/InteractiveCanvas.h index 769b622..c255720 100644 --- a/src/visual/InteractiveCanvas.h +++ b/src/visual/InteractiveCanvas.h @@ -8,10 +8,11 @@ #include "MouseTracker.h" #include +#include class InteractiveCanvas: public wxGLCanvas { public: - InteractiveCanvas(wxWindow *parent, int *dispAttrs); + InteractiveCanvas(wxWindow *parent, std::vector dispAttrs); ~InteractiveCanvas(); long long getFrequencyAt(float x); diff --git a/src/visual/MeterCanvas.cpp b/src/visual/MeterCanvas.cpp index c46eb09..d80b432 100644 --- a/src/visual/MeterCanvas.cpp +++ b/src/visual/MeterCanvas.cpp @@ -30,7 +30,7 @@ EVT_LEAVE_WINDOW(MeterCanvas::OnMouseLeftWindow) EVT_ENTER_WINDOW(MeterCanvas::OnMouseEnterWindow) wxEND_EVENT_TABLE() -MeterCanvas::MeterCanvas(wxWindow *parent, int *dispAttrs) : +MeterCanvas::MeterCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs), level(0), level_min(0), level_max(1), inputValue(0), userInputValue(0), showUserInput(true) { glContext = new MeterContext(this, &wxGetApp().GetContext(this)); diff --git a/src/visual/MeterCanvas.h b/src/visual/MeterCanvas.h index 6f77f74..9134d6e 100644 --- a/src/visual/MeterCanvas.h +++ b/src/visual/MeterCanvas.h @@ -17,7 +17,7 @@ class MeterCanvas: public InteractiveCanvas { public: - MeterCanvas(wxWindow *parent, int *dispAttrs); + MeterCanvas(wxWindow *parent, std::vector dispAttrs); ~MeterCanvas(); void setLevel(float level_in); diff --git a/src/visual/ModeSelectorCanvas.cpp b/src/visual/ModeSelectorCanvas.cpp index 2cc3c61..31c53ed 100644 --- a/src/visual/ModeSelectorCanvas.cpp +++ b/src/visual/ModeSelectorCanvas.cpp @@ -27,7 +27,7 @@ EVT_LEAVE_WINDOW(ModeSelectorCanvas::OnMouseLeftWindow) EVT_ENTER_WINDOW(ModeSelectorCanvas::OnMouseEnterWindow) wxEND_EVENT_TABLE() -ModeSelectorCanvas::ModeSelectorCanvas(wxWindow *parent, int *dispAttrs) : +ModeSelectorCanvas::ModeSelectorCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs), numChoices(0), currentSelection(-1), toggleMode(false), inputChanged(false), padX(4.0), padY(4.0), highlightOverride(false) { glContext = new ModeSelectorContext(this, &wxGetApp().GetContext(this)); diff --git a/src/visual/ModeSelectorCanvas.h b/src/visual/ModeSelectorCanvas.h index 5cfeaa1..3a0d588 100644 --- a/src/visual/ModeSelectorCanvas.h +++ b/src/visual/ModeSelectorCanvas.h @@ -27,7 +27,7 @@ public: class ModeSelectorCanvas: public InteractiveCanvas { public: - ModeSelectorCanvas(wxWindow *parent, int *dispAttrs); + ModeSelectorCanvas(wxWindow *parent, std::vector dispAttrs); ~ModeSelectorCanvas(); int getHoveredSelection(); diff --git a/src/visual/ScopeCanvas.cpp b/src/visual/ScopeCanvas.cpp index bebfb56..5371513 100644 --- a/src/visual/ScopeCanvas.cpp +++ b/src/visual/ScopeCanvas.cpp @@ -31,7 +31,7 @@ EVT_LEAVE_WINDOW(ScopeCanvas::OnMouseLeftWindow) EVT_ENTER_WINDOW(ScopeCanvas::OnMouseEnterWindow) wxEND_EVENT_TABLE() -ScopeCanvas::ScopeCanvas(wxWindow *parent, int *dispAttrs) : InteractiveCanvas(parent, dispAttrs), ppmMode(false), ctr(0), ctrTarget(0), dragAccel(0), helpTip("") { +ScopeCanvas::ScopeCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs), ppmMode(false), ctr(0), ctrTarget(0), dragAccel(0), helpTip("") { glContext = new ScopeContext(this, &wxGetApp().GetContext(this)); inputData.set_max_num_items(2); diff --git a/src/visual/ScopeCanvas.h b/src/visual/ScopeCanvas.h index 219235e..7511437 100644 --- a/src/visual/ScopeCanvas.h +++ b/src/visual/ScopeCanvas.h @@ -17,7 +17,7 @@ class ScopeCanvas: public InteractiveCanvas { public: - ScopeCanvas(wxWindow *parent, int *dispAttrs); + ScopeCanvas(wxWindow *parent, std::vector dispAttrs); ~ScopeCanvas(); //This is public because it is indeed forwarded from diff --git a/src/visual/SpectrumCanvas.cpp b/src/visual/SpectrumCanvas.cpp index ab54ef3..742bb2c 100644 --- a/src/visual/SpectrumCanvas.cpp +++ b/src/visual/SpectrumCanvas.cpp @@ -32,7 +32,7 @@ EVT_RIGHT_DOWN(SpectrumCanvas::OnMouseRightDown) EVT_RIGHT_UP(SpectrumCanvas::OnMouseRightReleased) wxEND_EVENT_TABLE() -SpectrumCanvas::SpectrumCanvas(wxWindow *parent, int *dispAttrs) : +SpectrumCanvas::SpectrumCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs), waterfallCanvas(NULL) { glContext = new PrimaryGLContext(this, &wxGetApp().GetContext(this)); diff --git a/src/visual/SpectrumCanvas.h b/src/visual/SpectrumCanvas.h index 6c4c1eb..68374aa 100644 --- a/src/visual/SpectrumCanvas.h +++ b/src/visual/SpectrumCanvas.h @@ -16,7 +16,7 @@ class WaterfallCanvas; class SpectrumCanvas: public InteractiveCanvas { public: - SpectrumCanvas(wxWindow *parent, int *dispAttrs); + SpectrumCanvas(wxWindow *parent, std::vector dispAttrs); ~SpectrumCanvas(); //This is public because it is indeed forwarded from diff --git a/src/visual/TuningCanvas.cpp b/src/visual/TuningCanvas.cpp index 5051c60..9ee6b3e 100644 --- a/src/visual/TuningCanvas.cpp +++ b/src/visual/TuningCanvas.cpp @@ -33,7 +33,7 @@ EVT_MOUSEWHEEL(TuningCanvas::OnMouseWheelMoved) //EVT_KEY_UP(TuningCanvas::OnKeyUp) wxEND_EVENT_TABLE() -TuningCanvas::TuningCanvas(wxWindow *parent, int *dispAttrs) : +TuningCanvas::TuningCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs), dragAccum(0), uxDown(0), top(false), bottom(false), freq(-1), bw(-1), center(-1), halfBand(false) { glContext = new TuningContext(this, &wxGetApp().GetContext(this)); diff --git a/src/visual/TuningCanvas.h b/src/visual/TuningCanvas.h index 11b6ec9..708ddcf 100644 --- a/src/visual/TuningCanvas.h +++ b/src/visual/TuningCanvas.h @@ -20,7 +20,7 @@ public: enum ActiveState { TUNING_HOVER_NONE, TUNING_HOVER_FREQ, TUNING_HOVER_BW, TUNING_HOVER_PPM, TUNING_HOVER_CENTER }; - TuningCanvas(wxWindow *parent, int *dispAttrs); + TuningCanvas(wxWindow *parent, std::vector dispAttrs); ~TuningCanvas(); void setHelpTip(std::string tip); diff --git a/src/visual/WaterfallCanvas.cpp b/src/visual/WaterfallCanvas.cpp index befb5cc..811c7c0 100644 --- a/src/visual/WaterfallCanvas.cpp +++ b/src/visual/WaterfallCanvas.cpp @@ -37,7 +37,7 @@ EVT_ENTER_WINDOW(WaterfallCanvas::OnMouseEnterWindow) EVT_MOUSEWHEEL(WaterfallCanvas::OnMouseWheelMoved) wxEND_EVENT_TABLE() -WaterfallCanvas::WaterfallCanvas(wxWindow *parent, int *dispAttrs) : +WaterfallCanvas::WaterfallCanvas(wxWindow *parent, std::vector dispAttrs) : InteractiveCanvas(parent, dispAttrs), dragState(WF_DRAG_NONE), nextDragState(WF_DRAG_NONE), fft_size(0), new_fft_size(0), waterfall_lines(0), dragOfs(0), mouseZoom(1), zoom(1), freqMoving(false), freqMove(0.0), hoverAlpha(1.0) { diff --git a/src/visual/WaterfallCanvas.h b/src/visual/WaterfallCanvas.h index 610bb69..4f3ed31 100644 --- a/src/visual/WaterfallCanvas.h +++ b/src/visual/WaterfallCanvas.h @@ -21,7 +21,7 @@ public: WF_DRAG_NONE, WF_DRAG_BANDWIDTH_LEFT, WF_DRAG_BANDWIDTH_RIGHT, WF_DRAG_FREQUENCY, WF_DRAG_RANGE }; - WaterfallCanvas(wxWindow *parent, int *dispAttrs); + WaterfallCanvas(wxWindow *parent, std::vector dispAttrs); void setup(unsigned int fft_size_in, int waterfall_lines_in); void setFFTSize(unsigned int fft_size_in); ~WaterfallCanvas(); @@ -69,8 +69,8 @@ private: std::vector spectrum_points; - SpectrumCanvas *spectrumCanvas; - PrimaryGLContext *glContext; + SpectrumCanvas *spectrumCanvas = nullptr; + PrimaryGLContext *glContext = nullptr; WaterfallPanel waterfallPanel; DragState dragState;