// -------------------------------------------------------------- #ifndef _RADIO_FRAME_HPP_ #define _RADIO_FRAME_HPP_ #include #include #include #include "FrameDefs.hpp" #include "Symbolizer.hpp" #include "Formatter.hpp" #include "DeSymbolizer.hpp" #include "DeFormatter.hpp" class FrameReceiver { public: FrameReceiver(IDeFormatter *pRawFrameHandler) : m_deformatter(pRawFrameHandler) , m_desymbolizer( &m_deformatter) , m_framesCount(0) , m_byteCount(0) { } ~FrameReceiver() { } frame_statistics_t getStats() { return m_deformatter.getStats(); } void resetStats() { m_deformatter.resetStats(); } void setNumBitsPerSymbol(uint32_t nBitsPerSym) { m_desymbolizer.setNumBitsPerSymbol(nBitsPerSym); m_deformatter.resetStats(); } void process(symbol_t symbol) { m_desymbolizer.process(symbol); } private: DeFormatter m_deformatter; DeSymbolizer m_desymbolizer; uint32_t m_framesCount; uint32_t m_byteCount; }; // -------------------------------------------------------------- #endif // _RADIO_FRAME_HPP_