diff --git a/plugins/channel/demoddsd/dsddecoder.h b/plugins/channel/demoddsd/dsddecoder.h index 084fb80d1..123a0e1d3 100644 --- a/plugins/channel/demoddsd/dsddecoder.h +++ b/plugins/channel/demoddsd/dsddecoder.h @@ -48,6 +48,7 @@ public: const char *getSlot1Text() const { return m_decoder.getSlot1Text(); } unsigned char getColorCode() const { return m_decoder.getColorCode(); } const DSDcc::DSDDstar& getDStarDecoder() const { return m_decoder.getDStarDecoder(); } + const DSDcc::DSDdPMR& getDPMRDecoder() const { return m_decoder.getDPMRDecoder(); } void setAudioGain(float gain) { m_decoder.setAudioGain(gain); } void setBaudRate(int baudRate); diff --git a/plugins/channel/demoddsd/dsddemodgui.cpp b/plugins/channel/demoddsd/dsddemodgui.cpp index e3e51f54c..9d3f3d044 100644 --- a/plugins/channel/demoddsd/dsddemodgui.cpp +++ b/plugins/channel/demoddsd/dsddemodgui.cpp @@ -439,6 +439,14 @@ void DSDDemodGUI::formatStatusText() m_formatStatusText[62] = '\0'; m_signalFormat = signalFormatDStar; break; + case DSDcc::DSDDecoder::DSDSyncDPMR: + if (m_signalFormat != signalFormatDPMR) + { + memcpy(&m_formatStatusText, "CC: ", 4); + } + sprintf(&m_formatStatusText[4], "%04d", m_dsdDemod->getDecoder().getDPMRDecoder().getColorCode()); + m_signalFormat = signalFormatDPMR; + break; default: m_signalFormat = signalFormatNone; m_formatStatusText[0] = '\0'; diff --git a/plugins/channel/demoddsd/dsddemodgui.h b/plugins/channel/demoddsd/dsddemodgui.h index dd1eb7ce0..6bb644ec3 100644 --- a/plugins/channel/demoddsd/dsddemodgui.h +++ b/plugins/channel/demoddsd/dsddemodgui.h @@ -78,7 +78,8 @@ private: { signalFormatNone, signalFormatDMR, - signalFormatDStar + signalFormatDStar, + signalFormatDPMR } SignalFormat; Ui::DSDDemodGUI* ui;