From 20eb6d64fdf6ca5b547cb1f16f67c7c9f2c45ef0 Mon Sep 17 00:00:00 2001 From: Thomas Tsou Date: Sat, 9 Nov 2013 14:30:41 -0500 Subject: Transceiver52M: Separate signalVector into it's own file Break out the signalVector object and clean up the interface in the process. Signed-off-by: Thomas Tsou --- Transceiver52M/signalVector.h | 51 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 Transceiver52M/signalVector.h (limited to 'Transceiver52M/signalVector.h') diff --git a/Transceiver52M/signalVector.h b/Transceiver52M/signalVector.h new file mode 100644 index 0000000..2f65e28 --- /dev/null +++ b/Transceiver52M/signalVector.h @@ -0,0 +1,51 @@ +#ifndef _SIGNALVECTOR_H_ +#define _SIGNALVECTOR_H_ + +#include +#include + +/** Vector symmetry */ +enum Symmetry { + NONE = 0, + ABSSYM = 1 +}; + +class signalVector: public Vector { +public: + /** Default constructor */ + signalVector(size_t size = 0); + + /** Construct with head room */ + signalVector(size_t size, size_t start); + + /** Construct from existing buffer data (buffer not managed) */ + signalVector(complex *data, size_t start, size_t span); + + /** Construct by from existing vector */ + signalVector(const signalVector &vector); + + /** Construct by from existing vector and append head-tail room */ + signalVector(const signalVector &vector, size_t start, size_t tail = 0); + + /** Override base assignment operator to include start offsets */ + void operator=(const signalVector& vector); + + /** Return head room */ + size_t getStart() const; + + Symmetry getSymmetry() const; + void setSymmetry(Symmetry symmetry); + + bool isReal() const; + void isReal(bool real); + + bool isAligned() const; + void setAligned(bool aligned); + +private: + Symmetry symmetry; + bool real; + bool aligned; +}; + +#endif /* _SIGNALVECTOR_H_ */ -- cgit v1.2.3