aboutsummaryrefslogtreecommitdiffstats
path: root/Transceiver52M/radioVector.h
diff options
context:
space:
mode:
authorThomas Tsou <tom@tsou.cc>2013-11-13 22:48:11 -0500
committerThomas Tsou <tom@tsou.cc>2013-11-15 23:35:07 -0500
commita2fe91a688fb16f1055e3af77478cfb4bceb3ae2 (patch)
tree6ff5dc34e0664adeb7b2bd171e926e1fb48e6172 /Transceiver52M/radioVector.h
parente1ce92599af0054590aadab5b04a5bdb24bf6243 (diff)
Transceiver52M: Add vectorized radio burst capability
This patch allows multiple signalVectors to be stored within a single radioVector object. The motivation is to provide a facility for diversity and/or MIMO burst handling. When no channel value is specified, single channel bevhaviour is maintained. Signed-off-by: Thomas Tsou <tom@tsou.cc>
Diffstat (limited to 'Transceiver52M/radioVector.h')
-rw-r--r--Transceiver52M/radioVector.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/Transceiver52M/radioVector.h b/Transceiver52M/radioVector.h
index c5c255b..9acce94 100644
--- a/Transceiver52M/radioVector.h
+++ b/Transceiver52M/radioVector.h
@@ -26,16 +26,23 @@
#include "GSMCommon.h"
#include "Interthread.h"
-class radioVector : public signalVector {
+class radioVector {
public:
- radioVector(const signalVector& wVector, GSM::Time& wTime);
- radioVector(size_t size, GSM::Time& wTime);
- radioVector(size_t size, size_t start, GSM::Time& wTime);
+ radioVector(GSM::Time& wTime, size_t size = 0,
+ size_t start = 0, size_t chans = 1);
+
+ radioVector(GSM::Time& wTime, signalVector *vector);
+ ~radioVector();
+
GSM::Time getTime() const;
void setTime(const GSM::Time& wTime);
bool operator>(const radioVector& other) const;
+ signalVector *getVector(size_t chan = 0);
+ bool setVector(signalVector *vector, size_t chan = 0);
+ size_t chans() const { return vectors.size(); }
private:
+ std::vector<signalVector *> vectors;
GSM::Time mTime;
};