GNU Radio's GSM Package
|
#include <BitVector.h>
Public Member Functions | |
SoftVector (size_t wSize=0) | |
SoftVector (const char *valString) | |
SoftVector (const BitVector &source) | |
SoftVector (float *wData, unsigned length) | |
SoftVector (float *wData, float *wStart, float *wEnd) | |
SoftVector (Vector< float > source) | |
Casts and overrides of Vector operators. | |
SoftVector | segment (size_t start, size_t span) |
SoftVector | alias () |
const SoftVector | segment (size_t start, size_t span) const |
SoftVector | head (size_t span) |
const SoftVector | head (size_t span) const |
SoftVector | tail (size_t start) |
const SoftVector | tail (size_t start) const |
float | getEnergy (float *low=0) const |
float | getSNR () const |
void | unknown () |
bool | bit (size_t index) const |
BitVector | sliced () const |
void | copyUnPunctured (SoftVector &dst, const unsigned *puncture, const size_t plth) |
float | softbit (size_t index) const |
void | settfb (size_t index, float value) |
![]() | |
Vector (size_t wSize=0) | |
Vector (Vector< float > &other) | |
Vector (const Vector< float > &other) | |
Vector (float *wData, float *wStart, float *wEnd) | |
Vector (float *wStart, size_t span) | |
Vector (const Vector< float > &other1, const Vector< float > &other2) | |
void | operator= (Vector< float > &other) |
void | operator= (const Vector< float > &other) |
Vector< float > | segment (size_t start, size_t span) |
const Vector< float > | segment (size_t start, size_t span) const |
Vector< float > | head (size_t span) |
const Vector< float > | head (size_t span) const |
Vector< float > | tail (size_t start) |
const Vector< float > | tail (size_t start) const |
![]() | |
size_t | size () const |
size_t | bytes () const |
void | resize (size_t newElements) |
void | clear () |
void | clone (const VectorBase< float > &other) |
void | vConcat (const VectorBase< float > &other1, const VectorBase< float > &other2) |
~VectorBase () | |
bool | isOwner () |
std::string | inspect () const |
void | copyToSegment (VectorBase< float > &other, size_t start, size_t span) const |
void | copyToSegment (VectorBase< float > &other, size_t start=0) const |
void | copyTo (VectorBase< float > &other) const |
void | segmentCopyTo (VectorBase< float > &other, size_t start, size_t span) const |
void | fill (const float &val) |
void | fill (const float &val, unsigned start, unsigned length) |
void | operator= (const VectorBase< float > &other) |
float & | operator[] (size_t index) |
const float & | operator[] (size_t index) const |
const float * | begin () const |
float * | begin () |
const float * | end () const |
float * | end () |
const float * | getData () const |
Additional Inherited Members | |
![]() | |
typedef float * | iterator |
typedef const float * | const_iterator |
![]() | |
typedef float * | VectorDataType |
![]() | |
void | vInit (size_t elements) |
void | shiftMem (VectorBase< float > &other) |
void | makeAlias (const VectorBase< float > &other) |
VectorBase () | |
VectorBase (VectorDataType wData, float *wStart, float *wEnd) | |
![]() | |
VectorDataType | mData |
allocated data block. | |
float * | mStart |
start of useful data | |
float * | mEnd |
end of useful data + 1 | |
The SoftVector class is used to represent a soft-decision signal. Values 0..1 represent probabilities that a bit is "true".
|
inline |
Build a SoftVector of a given length.
References Vector< float >::Vector().
Referenced by alias(), copyUnPunctured(), head(), head(), segment(), segment(), tail(), and tail().
SoftVector::SoftVector | ( | const char * | valString | ) |
Construct a SoftVector from a C string of "0", "1", and "X".
SoftVector::SoftVector | ( | const BitVector & | source | ) |
Construct a SoftVector from a BitVector.
|
inline |
Wrap a SoftVector around a block of floats. The block will be delete[]ed upon desctuction.
References Vector< float >::Vector().
|
inline |
References Vector< float >::Vector().
|
inline |
Casting from a Vector<float>. Note that this is NOT pass-by-reference.
References Vector< float >::Vector().
|
inline |
References segment(), VectorBase< float >::size(), and SoftVector().
|
inline |
Return a hard bit value from a given index by slicing.
References VectorBase< float >::mEnd, and VectorBase< float >::mStart.
void SoftVector::copyUnPunctured | ( | SoftVector & | dst, |
const unsigned * | puncture, | ||
const size_t | plth ) |
Copy to dst, adding in 0.5 for those indexed in puncture.
References SoftVector().
float SoftVector::getEnergy | ( | float * | low = 0 | ) | const |
float SoftVector::getSNR | ( | ) | const |
|
inline |
References segment(), and SoftVector().
|
inline |
References segment(), and SoftVector().
|
inline |
References VectorBase< float >::mEnd, VectorBase< float >::mStart, and SoftVector().
|
inline |
References Vector< T >::segment(), and SoftVector().
|
inline |
Set a soft bit
References VectorBase< float >::mEnd, and VectorBase< float >::mStart.
BitVector SoftVector::sliced | ( | ) | const |
Slice the whole signal into bits.
|
inline |
Return a soft bit.
References VectorBase< float >::mEnd, and VectorBase< float >::mStart.
|
inline |
References segment(), VectorBase< float >::size(), and SoftVector().
|
inline |
References segment(), VectorBase< float >::size(), and SoftVector().
|
inline |
Fill with "unknown" values.
References VectorBase< float >::fill().