diff --git a/radio/Formatter.cpp b/radio/Formatter.cpp index 622f260..ce44be3 100644 --- a/radio/Formatter.cpp +++ b/radio/Formatter.cpp @@ -27,6 +27,21 @@ Formatter::Formatter() m_frame.preamble.data[1] = ~(m_frame.preamble.data[0]); } +frame_statistics_t Formatter::getStats() +{ + return m_frameStats; +} + +void Formatter::resetStats() +{ + memset(&m_frameStats, 0, sizeof(frame_statistics_t)); +} + +void Formatter::setSyncData(const sync_t &syncPattern) +{ + memcpy(&m_frame.sync, &syncPattern, sizeof(sync_t)); +} + void Formatter::process_data() { if (m_idleCount) @@ -111,16 +126,6 @@ void Formatter::process() }; } -frame_statistics_t Formatter::getStats() -{ - return m_frameStats; -} - -void Formatter::resetStats() -{ - memset(&m_frameStats, 0, sizeof(frame_statistics_t)); -} - void Formatter::commit(frame_type frameType, size_t dataCount) { // Commit frame diff --git a/radio/Formatter.hpp b/radio/Formatter.hpp index c1f8f64..d57656c 100644 --- a/radio/Formatter.hpp +++ b/radio/Formatter.hpp @@ -16,6 +16,7 @@ public: virtual ~Formatter() = default; frame_statistics_t getStats(); void resetStats(); + void setSyncData(const sync_t &syncPattern); // Processor::Block void prepare() override; diff --git a/radio/FrameDefs.hpp b/radio/FrameDefs.hpp index 1f1859b..abb807c 100644 --- a/radio/FrameDefs.hpp +++ b/radio/FrameDefs.hpp @@ -31,6 +31,8 @@ enum frame_type #pragma pack(1) typedef struct _sync_t { + uint8_t data[10]; + } sync_t; typedef struct _preamble_t