Remove all of the display processing from the code.

This commit is contained in:
Jonathan Naylor 2023-06-16 17:18:43 +01:00
parent f12604bb1c
commit d01520bea1
27 changed files with 74 additions and 735 deletions

View file

@ -39,7 +39,6 @@ bool CDMRSlot::m_dumpTAData = true;
CModem* CDMRSlot::m_modem = NULL;
CDMRNetwork* CDMRSlot::m_network = NULL;
CDisplay* CDMRSlot::m_display = NULL;
bool CDMRSlot::m_duplex = true;
CDMRLookup* CDMRSlot::m_lookup = NULL;
unsigned int CDMRSlot::m_hangCount = 3U * 17U;
@ -320,8 +319,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
if (m_netState == RS_NET_IDLE) {
setShortLC(m_slotNo, dstId, flco, ACTIVITY_VOICE);
m_display->writeDMR(m_slotNo, src, flco == FLCO_GROUP, dst, "R");
m_display->writeDMRRSSI(m_slotNo, m_rssi);
writeJSONRSSI();
writeJSONBER();
}
@ -395,8 +392,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
writeJSONRF("end", float(m_rfFrames) / 16.667F, float(m_rfErrs * 100U) / float(m_rfBits));
}
m_display->writeDMRTA(m_slotNo, NULL, " ");
if (m_rfTimeout) {
writeEndRF();
return false;
@ -458,8 +453,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
if (m_netState == RS_NET_IDLE) {
setShortLC(m_slotNo, dstId, gi ? FLCO_GROUP : FLCO_USER_USER, ACTIVITY_DATA);
m_display->writeDMR(m_slotNo, src, gi, dst, "R");
m_display->writeDMRRSSI(m_slotNo, m_rssi);
writeJSONRSSI();
}
@ -569,8 +562,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
// If data preamble, signal its existence
if (m_netState == RS_NET_IDLE && csbko == CSBKO_PRECCSBK && csbk.getDataContent()) {
setShortLC(m_slotNo, dstId, gi ? FLCO_GROUP : FLCO_USER_USER, ACTIVITY_DATA);
m_display->writeDMR(m_slotNo, src, gi, dst, "R");
m_display->writeDMRRSSI(m_slotNo, m_rssi);
writeJSONRSSI();
}
@ -635,7 +626,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfErrs += errors;
m_bitErrsAccum += errors;
m_display->writeDMRBER(m_slotNo, float(errors) / 1.41F);
writeJSONBER();
}
@ -648,7 +638,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfEmbeddedData[m_rfEmbeddedWriteN].reset();
m_display->writeDMRRSSI(m_slotNo, m_rssi);
writeJSONRSSI();
if (!m_rfTimeout) {
@ -688,7 +677,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfErrs += errors;
m_bitErrsAccum += errors;
m_display->writeDMRBER(m_slotNo, float(errors) / 1.41F);
writeJSONBER();
}
@ -736,10 +724,8 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfTalkerAlias.reset();
bool complete = m_rfTalkerAlias.add(0U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_rfTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_rfTalkerAlias.get(), "R");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Header", m_slotNo);
@ -759,10 +745,8 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfTalkerAlias.reset();
bool complete = m_rfTalkerAlias.add(1U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_rfTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_rfTalkerAlias.get(), "R");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Block 1", m_slotNo);
@ -782,10 +766,8 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfTalkerAlias.reset();
bool complete = m_rfTalkerAlias.add(2U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_rfTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_rfTalkerAlias.get(), "R");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Block 2", m_slotNo);
@ -805,10 +787,8 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
m_rfTalkerAlias.reset();
bool complete = m_rfTalkerAlias.add(3U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_rfTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_rfTalkerAlias.get(), "R");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Block 3", m_slotNo);
@ -991,9 +971,6 @@ bool CDMRSlot::writeModem(unsigned char *data, unsigned int len)
if (m_netState == RS_NET_IDLE) {
setShortLC(m_slotNo, dstId, flco, ACTIVITY_VOICE);
m_display->writeDMR(m_slotNo, src, flco == FLCO_GROUP, dst, "R");
m_display->writeDMRRSSI(m_slotNo, m_rssi);
m_display->writeDMRBER(m_slotNo, float(errors) / 1.41F);
writeJSONRSSI();
writeJSONBER();
}
@ -1028,10 +1005,8 @@ void CDMRSlot::writeEndRF(bool writeEnd)
{
m_rfState = RS_RF_LISTENING;
if (m_netState == RS_NET_IDLE) {
if (m_netState == RS_NET_IDLE)
setShortLC(m_slotNo, 0U);
m_display->clearDMR(m_slotNo);
}
if (writeEnd) {
if (m_netState == RS_NET_IDLE && m_duplex && !m_rfTimeout) {
@ -1079,8 +1054,6 @@ void CDMRSlot::writeEndNet(bool writeEnd)
setShortLC(m_slotNo, 0U);
m_display->clearDMR(m_slotNo);
m_lastFrameValid = false;
if (writeEnd && !m_netTimeout) {
@ -1229,7 +1202,6 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
std::string dst = m_lookup->find(dstId);
class CUserDBentry cn;
m_lookup->findWithName(srcId, &cn);
m_display->writeDMR(m_slotNo, cn, flco == FLCO_GROUP, dst, "N");
#if defined(DUMP_DMR)
openFile();
@ -1305,8 +1277,6 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
class CUserDBentry cn;
m_lookup->findWithName(srcId, &cn);
m_display->writeDMR(m_slotNo, cn, m_netLC->getFLCO() == FLCO_GROUP, dst, "N");
LogMessage("DMR Slot %u, received network late entry from %s to %s%s", m_slotNo, src.c_str(), m_netLC->getFLCO() == FLCO_GROUP ? "TG " : "", dst.c_str());
writeJSONNet("late_entry", srcId, src, m_netLC->getFLCO() == FLCO_GROUP, dstId);
}
@ -1378,7 +1348,6 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
m_netFrames += 2U;
LogMessage("DMR Slot %u, received network end of voice transmission from %s to %s%s, %.1f seconds, %u%% packet loss, BER: %.1f%%", m_slotNo, src.c_str(), flco == FLCO_GROUP ? "TG " : "", dst.c_str(), float(m_netFrames) / 16.667F, (m_netLost * 100U) / m_netFrames, float(m_netErrs * 100U) / float(m_netBits));
writeJSONNet("end", float(m_netFrames) / 16.667F, (m_netLost * 100U) / m_netFrames, float(m_netErrs * 100U) / float(m_netBits));
m_display->writeDMRTA(m_slotNo, NULL, " ");
writeEndNet();
} else if (dataType == DT_DATA_HEADER) {
if (m_netState == RS_NET_DATA)
@ -1425,8 +1394,6 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
std::string src = m_lookup->find(srcId);
std::string dst = m_lookup->find(dstId);
m_display->writeDMR(m_slotNo, src, gi, dst, "N");
LogMessage("DMR Slot %u, received network data header from %s to %s%s, %u blocks", m_slotNo, src.c_str(), gi ? "TG ": "", dst.c_str(), m_netFrames);
writeJSONNet("start", srcId, src, gi, dstId, m_netFrames);
@ -1512,8 +1479,6 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
class CUserDBentry cn;
m_lookup->findWithName(srcId, &cn);
m_display->writeDMR(m_slotNo, cn, m_netLC->getFLCO() == FLCO_GROUP, dst, "N");
LogMessage("DMR Slot %u, received network late entry from %s to %s%s", m_slotNo, src.c_str(), m_netLC->getFLCO() == FLCO_GROUP ? "TG " : "", dst.c_str());
writeJSONNet("late_entry", srcId, src, m_netLC->getFLCO() == FLCO_GROUP, dstId);
}
@ -1602,10 +1567,8 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
m_netTalkerAlias.reset();
bool complete = m_netTalkerAlias.add(0U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_netTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_netTalkerAlias.get(), "N");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Header", m_slotNo);
@ -1621,10 +1584,8 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
m_netTalkerAlias.reset();
bool complete = m_netTalkerAlias.add(1U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_netTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_netTalkerAlias.get(), "N");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Block 1", m_slotNo);
@ -1640,10 +1601,8 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
m_netTalkerAlias.reset();
bool complete = m_netTalkerAlias.add(2U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_netTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_netTalkerAlias.get(), "N");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Block 2", m_slotNo);
@ -1659,10 +1618,8 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
m_netTalkerAlias.reset();
bool complete = m_netTalkerAlias.add(3U, data + 2U, 7U);
if (complete) {
if (complete)
writeJSONText(m_netTalkerAlias.get());
m_display->writeDMRTA(m_slotNo, m_netTalkerAlias.get(), "N");
}
if (m_dumpTAData) {
::sprintf(text, "DMR Slot %u, Embedded Talker Alias Block 3", m_slotNo);
@ -1826,10 +1783,8 @@ void CDMRSlot::writeNetwork(const CDMRData& dmrData)
}
// If data preamble, signal its existence
if (csbko == CSBKO_PRECCSBK && csbk.getDataContent()) {
if (csbko == CSBKO_PRECCSBK && csbk.getDataContent())
setShortLC(m_slotNo, dstId, gi ? FLCO_GROUP : FLCO_USER_USER, ACTIVITY_DATA);
m_display->writeDMR(m_slotNo, src, gi, dst, "N");
}
} else if (dataType == DT_RATE_12_DATA || dataType == DT_RATE_34_DATA || dataType == DT_RATE_1_DATA) {
if (m_netState != RS_NET_DATA || m_netFrames == 0U) {
writeEndNet();
@ -2065,10 +2020,9 @@ void CDMRSlot::writeQueueNet(const unsigned char *data)
m_queue.addData(data, len);
}
void CDMRSlot::init(unsigned int colorCode, bool embeddedLCOnly, bool dumpTAData, unsigned int callHang, CModem* modem, CDMRNetwork* network, CDisplay* display, bool duplex, CDMRLookup* lookup, CRSSIInterpolator* rssiMapper, unsigned int jitter, DMR_OVCM_TYPES ovcm)
void CDMRSlot::init(unsigned int colorCode, bool embeddedLCOnly, bool dumpTAData, unsigned int callHang, CModem* modem, CDMRNetwork* network, bool duplex, CDMRLookup* lookup, CRSSIInterpolator* rssiMapper, unsigned int jitter, DMR_OVCM_TYPES ovcm)
{
assert(modem != NULL);
assert(display != NULL);
assert(lookup != NULL);
assert(rssiMapper != NULL);
@ -2077,7 +2031,6 @@ void CDMRSlot::init(unsigned int colorCode, bool embeddedLCOnly, bool dumpTAData
m_dumpTAData = dumpTAData;
m_modem = modem;
m_network = network;
m_display = display;
m_duplex = duplex;
m_lookup = lookup;
m_hangCount = callHang * 17U;