diff options
Diffstat (limited to 'Transceiver52M/radioInterface.h')
-rw-r--r-- | Transceiver52M/radioInterface.h | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/Transceiver52M/radioInterface.h b/Transceiver52M/radioInterface.h index a64702b..690d572 100644 --- a/Transceiver52M/radioInterface.h +++ b/Transceiver52M/radioInterface.h @@ -39,12 +39,14 @@ protected: RadioDevice *mRadio; ///< the USRP object - float *sendBuffer; + signalVector *sendBuffer; + signalVector *recvBuffer; unsigned sendCursor; + unsigned recvCursor; + + short *convertRecvBuffer; + short *convertSendBuffer; - float *rcvBuffer; - unsigned rcvCursor; - bool underrun; ///< indicates writes to USRP are too slow bool overrun; ///< indicates reads from USRP are too slow TIMESTAMP writeTimestamp; ///< sample timestamp of next packet written to USRP @@ -85,6 +87,10 @@ public: /** start the interface */ void start(); + /** intialization */ + virtual bool init(); + virtual void close(); + /** constructor */ RadioInterface(RadioDevice* wRadio = NULL, int receiveOffset = 3, @@ -92,7 +98,7 @@ public: GSM::Time wStartTime = GSM::Time(0)); /** destructor */ - ~RadioInterface(); + virtual ~RadioInterface(); /** check for underrun, resets underrun value */ bool isUnderrun(); @@ -156,6 +162,10 @@ void *AlignRadioServiceLoopAdapter(RadioInterface*); class RadioInterfaceResamp : public RadioInterface { private: + signalVector *innerSendBuffer; + signalVector *outerSendBuffer; + signalVector *innerRecvBuffer; + signalVector *outerRecvBuffer; void pushBuffer(); void pullBuffer(); @@ -166,4 +176,9 @@ public: int receiveOffset = 3, int wSPS = SAMPSPERSYM, GSM::Time wStartTime = GSM::Time(0)); + + ~RadioInterfaceResamp(); + + bool init(); + void close(); }; |