transceiver: separate I/O portion of radio interface implementation

Move push and pull of buffers into a dedicated file. This will
allow us to swap out resampling, non-resampling, and possibly
floating point device interfaces while presenting a single
floating point abstration in the interface itself.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2670 19bc5d8c-e614-43d4-8b26-e1612bc8e597
This commit is contained in:
Kurtis Heimerl
2011-11-26 03:18:34 +00:00
parent 40d7af3176
commit c7e3d8133e
4 changed files with 134 additions and 94 deletions

View File

@@ -37,10 +37,10 @@ private:
RadioDevice *mRadio; ///< the USRP object
short *sendBuffer; //[2*2*INCHUNK];
float *sendBuffer;
unsigned sendCursor;
short *rcvBuffer; //[2*2*OUTCHUNK];
float *rcvBuffer;
unsigned rcvCursor;
bool underrun; ///< indicates writes to USRP are too slow
@@ -64,13 +64,13 @@ private:
signalVector *finalVec, *finalVec9;
/** format samples to USRP */
short *radioifyVector(signalVector &wVector,
short *shortVector,
float scale,
bool zeroOut);
int radioifyVector(signalVector &wVector,
float *floatVector,
float scale,
bool zero);
/** format samples from USRP */
void unRadioifyVector(short *shortVector, signalVector &wVector);
int unRadioifyVector(float *floatVector, signalVector &wVector);
/** push GSM bursts into the transmit buffer */
void pushBuffer(void);