Stop any response from any mode when not enabled.

This commit is contained in:
Jonathan Naylor 2019-01-20 17:09:40 +00:00
parent 3d164b4148
commit 0f6945ef4e
6 changed files with 33 additions and 0 deletions

View file

@ -137,6 +137,9 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
{
assert(data != NULL);
if (!m_enabled)
return false;
if (data[0U] == TAG_LOST && m_rfState == RS_RF_AUDIO) {
if (m_rssi != 0U)
LogMessage("DMR Slot %u, RF voice transmission lost, %.1f seconds, BER: %.1f%%, RSSI: -%u/-%u/-%u dBm", m_slotNo, float(m_rfFrames) / 16.667F, float(m_rfErrs * 100U) / float(m_rfBits), m_minRSSI, m_maxRSSI, m_aveRSSI / m_rssiCount);
@ -991,6 +994,9 @@ void CDMRSlot::writeEndNet(bool writeEnd)
void CDMRSlot::writeNetwork(const CDMRData& dmrData)
{
if (!m_enabled)
return;
if (m_rfState != RS_RF_LISTENING && m_netState == RS_NET_IDLE)
return;

View file

@ -121,6 +121,9 @@ bool CDStarControl::writeModem(unsigned char *data, unsigned int len)
{
assert(data != NULL);
if (!m_enabled)
return false;
unsigned char type = data[0U];
if (type == TAG_LOST && (m_rfState == RS_RF_AUDIO || m_rfState == RS_RF_DATA)) {
@ -622,6 +625,9 @@ void CDStarControl::writeNetwork()
if (length == 0U)
return;
if (!m_enabled)
return;
if ((m_rfState == RS_RF_AUDIO || m_rfState == RS_RF_DATA) && m_netState == RS_NET_IDLE)
return;

View file

@ -87,6 +87,9 @@ bool CNXDNControl::writeModem(unsigned char *data, unsigned int len)
{
assert(data != NULL);
if (!m_enabled)
return false;
unsigned char type = data[0U];
if (type == TAG_LOST && m_rfState == RS_RF_AUDIO) {
@ -727,6 +730,9 @@ void CNXDNControl::writeNetwork()
if (!exists)
return;
if (!m_enabled)
return;
if (m_rfState != RS_RF_LISTENING && m_netState == RS_NET_IDLE)
return;

View file

@ -116,6 +116,9 @@ bool CP25Control::writeModem(unsigned char* data, unsigned int len)
{
assert(data != NULL);
if (!m_enabled)
return false;
bool sync = data[1U] == 0x01U;
if (data[0U] == TAG_LOST && m_rfState == RS_RF_AUDIO) {
@ -604,6 +607,9 @@ void CP25Control::writeNetwork()
if (length == 0U)
return;
if (!m_enabled)
return;
if (m_rfState != RS_RF_LISTENING && m_netState == RS_NET_IDLE)
return;

View file

@ -106,6 +106,9 @@ bool CPOCSAGControl::processData()
if (length == 0U)
return false;
if (!m_enabled)
return false;
m_ric = 0U;
m_ric |= (data[0U] << 16) & 0x00FF0000U;
m_ric |= (data[1U] << 8) & 0x0000FF00U;

View file

@ -110,6 +110,9 @@ bool CYSFControl::writeModem(unsigned char *data, unsigned int len)
{
assert(data != NULL);
if (!m_enabled)
return false;
unsigned char type = data[0U];
if (type == TAG_LOST && m_rfState == RS_RF_AUDIO) {
@ -1032,6 +1035,9 @@ void CYSFControl::writeNetwork()
if (length == 0U)
return;
if (!m_enabled)
return;
if (m_rfState != RS_RF_LISTENING && m_netState == RS_NET_IDLE)
return;