Refactor message buffering for relay

This commit is contained in:
Jordan Sherer
2018-07-25 22:49:19 -04:00
parent f67ea3803d
commit 9e9c996813
4 changed files with 85 additions and 59 deletions
+7 -1
View File
@@ -656,6 +656,7 @@ private:
int freq;
QDateTime utcTimestamp;
int snr;
QString text;
};
struct ActivityDetail
@@ -670,6 +671,11 @@ private:
int snr;
};
struct MessageBuffer {
CommandDetail cmd;
QList<ActivityDetail> msgs;
};
bool m_rxDirty;
int m_txFrameCount;
QString m_lastTxMessage;
@@ -686,7 +692,7 @@ private:
QCache<QString, int> m_rxCallCache; // call -> last freq seen
QMap<int, int> m_rxFrameBlockNumbers; // freq -> block
QMap<int, QList<ActivityDetail>> m_bandActivity; // freq -> [(text, last timestamp), ...]
QMap<int, QPair<CommandDetail, QList<ActivityDetail>>> m_messageCache; // freq -> (cmd, [frames, ...])
QMap<int, MessageBuffer> m_messageBuffer; // freq -> (cmd, [frames, ...])
QMap<QString, CallDetail> m_callActivity; // call -> (last freq, last timestamp)
QSet<QString> m_callSeenBeacon; // call
int m_previousFreq;