Add output of information about incoming reflector

This commit is contained in:
phl0 2016-04-16 21:45:49 +02:00
parent 103950d27f
commit bf128e76f3
10 changed files with 28 additions and 14 deletions

View file

@ -203,7 +203,7 @@ bool CDStarControl::writeModem(unsigned char *data)
m_rfState = RS_RF_AUDIO; m_rfState = RS_RF_AUDIO;
if (m_netState == RS_NET_IDLE) if (m_netState == RS_NET_IDLE)
m_display->writeDStar((char*)my1, (char*)my2, (char*)your, "R"); m_display->writeDStar((char*)my1, (char*)my2, (char*)your, "R", "");
LogMessage("D-Star, received RF header from %8.8s/%4.4s to %8.8s", my1, my2, your); LogMessage("D-Star, received RF header from %8.8s/%4.4s to %8.8s", my1, my2, your);
} else if (type == TAG_EOT) { } else if (type == TAG_EOT) {
@ -374,7 +374,7 @@ bool CDStarControl::writeModem(unsigned char *data)
m_rfN = (m_rfN + 1U) % 21U; m_rfN = (m_rfN + 1U) % 21U;
if (m_netState == RS_NET_IDLE) if (m_netState == RS_NET_IDLE)
m_display->writeDStar((char*)my1, (char*)my2, (char*)your, "R"); m_display->writeDStar((char*)my1, (char*)my2, (char*)your, "R", "");
LogMessage("D-Star, received RF late entry from %8.8s/%4.4s to %8.8s", my1, my2, your); LogMessage("D-Star, received RF late entry from %8.8s/%4.4s to %8.8s", my1, my2, your);
} }
@ -491,9 +491,18 @@ void CDStarControl::writeNetwork()
#endif #endif
m_netState = RS_NET_AUDIO; m_netState = RS_NET_AUDIO;
m_display->writeDStar((char*)my1, (char*)my2, (char*)your, "N"); LINK_STATUS status = LS_NONE;
unsigned char reflector[DSTAR_LONG_CALLSIGN_LENGTH];
if (m_network != NULL)
m_network->getStatus(status, reflector);
LogMessage("D-Star, received network header from %8.8s/%4.4s to %8.8s", my1, my2, your); m_display->writeDStar((char*)my1, (char*)my2, (char*)your, "N", (char*) reflector);
if (strcmp(reflector, " ") == 0) {
LogMessage("D-Star, received network header from %8.8s/%4.4s to %8.8s", my1, my2, your);
} else {
LogMessage("D-Star, received network header from %8.8s/%4.4s to %8.8s via %8.8s", my1, my2, your, reflector);
}
} else if (type == TAG_EOT) { } else if (type == TAG_EOT) {
if (m_netState != RS_NET_AUDIO) if (m_netState != RS_NET_AUDIO)
return; return;

View file

@ -33,7 +33,7 @@ public:
virtual void setLockout() = 0; virtual void setLockout() = 0;
virtual void setError(const char* text) = 0; virtual void setError(const char* text) = 0;
virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type) = 0; virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector) = 0;
virtual void clearDStar() = 0; virtual void clearDStar() = 0;
virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type) = 0; virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type) = 0;

View file

@ -107,12 +107,13 @@ void CHD44780::setLockout()
m_dmr = false; m_dmr = false;
} }
void CHD44780::writeDStar(const char* my1, const char* my2, const char* your, const char* type) void CHD44780::writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector)
{ {
assert(my1 != NULL); assert(my1 != NULL);
assert(my2 != NULL); assert(my2 != NULL);
assert(your != NULL); assert(your != NULL);
assert(type != NULL); assert(type != NULL);
assert(reflector != NULL);
::lcdClear(m_fd); ::lcdClear(m_fd);
@ -130,7 +131,11 @@ void CHD44780::writeDStar(const char* my1, const char* my2, const char* your, co
::lcdPosition(m_fd, 0, 1); ::lcdPosition(m_fd, 0, 1);
::lcdPrintf(m_fd, "%.*s", m_cols, buffer); ::lcdPrintf(m_fd, "%.*s", m_cols, buffer);
::sprintf(buffer, "%.8s", your); if (strcmp(reflector, " ") == 0) {
::sprintf(buffer, "%.8s", your);
} else {
::sprintf(buffer, "%.8s <- %.8s", your, reflector);
}
::lcdPosition(m_fd, 0, 2); ::lcdPosition(m_fd, 0, 2);
::lcdPrintf(m_fd, "%.*s", m_cols, buffer); ::lcdPrintf(m_fd, "%.*s", m_cols, buffer);
} else if (m_rows == 2 && m_cols == 40U) { } else if (m_rows == 2 && m_cols == 40U) {

View file

@ -37,7 +37,7 @@ public:
virtual void setError(const char* text); virtual void setError(const char* text);
virtual void setLockout(); virtual void setLockout();
virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type); virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector);
virtual void clearDStar(); virtual void clearDStar();
virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type); virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type);

View file

@ -93,7 +93,7 @@ void CNextion::setLockout()
m_mode = MODE_LOCKOUT; m_mode = MODE_LOCKOUT;
} }
void CNextion::writeDStar(const char* my1, const char* my2, const char* your, const char* type) void CNextion::writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector)
{ {
assert(my1 != NULL); assert(my1 != NULL);
assert(my2 != NULL); assert(my2 != NULL);

View file

@ -38,7 +38,7 @@ public:
virtual void setError(const char* text); virtual void setError(const char* text);
virtual void setLockout(); virtual void setLockout();
virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type); virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector);
virtual void clearDStar(); virtual void clearDStar();
virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type); virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type);

View file

@ -43,7 +43,7 @@ void CNullDisplay::setLockout()
{ {
} }
void CNullDisplay::writeDStar(const char* my1, const char* my2, const char* your, const char* type) void CNullDisplay::writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector)
{ {
} }

View file

@ -36,7 +36,7 @@ public:
virtual void setError(const char* text); virtual void setError(const char* text);
virtual void setLockout(); virtual void setLockout();
virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type); virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector);
virtual void clearDStar(); virtual void clearDStar();
virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type); virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type);

View file

@ -142,7 +142,7 @@ void CTFTSerial::setLockout()
m_mode = MODE_LOCKOUT; m_mode = MODE_LOCKOUT;
} }
void CTFTSerial::writeDStar(const char* my1, const char* my2, const char* your, const char* type) void CTFTSerial::writeDStar(const char* my1, const char* my2, const char* your, const char* type. const char* reflector)
{ {
assert(my1 != NULL); assert(my1 != NULL);
assert(my2 != NULL); assert(my2 != NULL);

View file

@ -38,7 +38,7 @@ public:
virtual void setError(const char* text); virtual void setError(const char* text);
virtual void setLockout(); virtual void setLockout();
virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type); virtual void writeDStar(const char* my1, const char* my2, const char* your, const char* type, const char* reflector);
virtual void clearDStar(); virtual void clearDStar();
virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type); virtual void writeDMR(unsigned int slotNo, const char* src, bool group, const char* dst, const char* type);