From 73d9cfec6e66f61f8c3cec7322fb3f3a819fdb2d Mon Sep 17 00:00:00 2001 From: f4exb Date: Wed, 20 Sep 2017 08:43:44 +0200 Subject: [PATCH] PlutoSDR: added message to send to other buddy for synchronization --- devices/plutosdr/deviceplutosdrshared.h | 41 +++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/devices/plutosdr/deviceplutosdrshared.h b/devices/plutosdr/deviceplutosdrshared.h index 0a0fa8b58..bf3411b03 100644 --- a/devices/plutosdr/deviceplutosdrshared.h +++ b/devices/plutosdr/deviceplutosdrshared.h @@ -17,6 +17,10 @@ #ifndef DEVICES_PLUTOSDR_DEVICEPLUTOSDRSHARED_H_ #define DEVICES_PLUTOSDR_DEVICEPLUTOSDRSHARED_H_ +#include + +#include "util/message.h" + class DevicePlutoSDRParams; /** @@ -37,6 +41,43 @@ public: virtual bool isRunning() = 0; }; + class MsgCrossReportToBuddy : public Message { + MESSAGE_CLASS_DECLARATION + public: + uint64_t getDevSampleRate() const { return m_devSampleRate; } + uint32_t getLpfFirbw() const { return m_lpfFIRBW; } + bool isLpfFirEnable() const { return m_lpfFIREnable; } + uint32_t getLpfFiRlog2IntDec() const { return m_lpfFIRlogIntDec; } + + static MsgCrossReportToBuddy *create(uint64_t devSampleRate, + bool lpfFIREnable, + uint32_t lpfFIRlog2Interp, + uint32_t lpfFIRBW) + { + return new MsgCrossReportToBuddy(devSampleRate, + lpfFIREnable, + lpfFIRlog2Interp, + lpfFIRBW); + } + + private: + MsgCrossReportToBuddy(uint64_t devSampleRate, + bool lpfFIREnable, + uint32_t lpfFIRlog2IntDec, + uint32_t lpfFIRBW) : + Message(), + m_devSampleRate(devSampleRate), + m_lpfFIREnable(lpfFIREnable), + m_lpfFIRlogIntDec(lpfFIRlog2IntDec), + m_lpfFIRBW(lpfFIRBW) + { } + + uint64_t m_devSampleRate; + bool m_lpfFIREnable; + uint32_t m_lpfFIRlogIntDec; + uint32_t m_lpfFIRBW; + }; + DevicePlutoSDRParams *m_deviceParams; //!< unique hardware device parameters ThreadInterface *m_thread; //!< holds the thread address if started else 0 bool m_threadWasRunning; //!< flag to know if thread needs to be resumed after suspend