|
| ~constellation_psk () override |
|
| constellation_sector (std::vector< gr_complex > constell, std::vector< int > pre_diff_code, unsigned int rotational_symmetry, unsigned int dimensionality, unsigned int n_sectors, normalization_t normalization=AMPLITUDE_NORMALIZATION) |
|
| ~constellation_sector () override |
|
unsigned int | decision_maker (const gr_complex *sample) override |
| Returns the constellation point that matches best. More...
|
|
| constellation (std::vector< gr_complex > constell, std::vector< int > pre_diff_code, unsigned int rotational_symmetry, unsigned int dimensionality, normalization_t normalization=AMPLITUDE_NORMALIZATION, float npwr=1.0) |
|
| constellation () |
|
virtual | ~constellation () |
|
void | normalize (normalization_t normalization) |
| Normalizes the constellation. More...
|
|
void | map_to_points (unsigned int value, gr_complex *points) |
| Returns the constellation points for a symbol value. More...
|
|
std::vector< gr_complex > | map_to_points_v (unsigned int value) |
|
unsigned int | decision_maker_v (std::vector< gr_complex > sample) |
| Takes a vector rather than a pointer. Better for SWIG wrapping. More...
|
|
unsigned int | decision_maker_pe (const gr_complex *sample, float *phase_error) |
| Also calculates the phase error. More...
|
|
virtual void | calc_metric (const gr_complex *sample, float *metric, gr::digital::trellis_metric_type_t type) |
| Calculates distance. More...
|
|
virtual void | calc_euclidean_metric (const gr_complex *sample, float *metric) |
|
virtual void | calc_hard_symbol_metric (const gr_complex *sample, float *metric) |
|
std::vector< gr_complex > | points () |
| Returns the set of points in this constellation. More...
|
|
std::vector< gr_complex > | s_points () |
| Returns the vector of points in this constellation. Raise error if dimensionality is not one. More...
|
|
std::vector< std::vector< gr_complex > > | v_points () |
| Returns a vector of vectors of points. More...
|
|
bool | apply_pre_diff_code () |
| Whether to apply an encoding before doing differential encoding. (e.g. gray coding) More...
|
|
void | set_pre_diff_code (bool a) |
| Whether to apply an encoding before doing differential encoding. (e.g. gray coding) More...
|
|
std::vector< int > | pre_diff_code () |
| Returns the encoding to apply before differential encoding. More...
|
|
unsigned int | rotational_symmetry () |
| Returns the order of rotational symmetry. More...
|
|
unsigned int | dimensionality () |
| Returns the number of complex numbers in a single symbol. More...
|
|
unsigned int | bits_per_symbol () |
|
unsigned int | arity () |
|
constellation_sptr | base () |
|
pmt::pmt_t | as_pmt () |
|
void | gen_soft_dec_lut (int precision, float npwr=-1) |
| Generates the soft decision LUT based on constellation and symbol map. More...
|
|
virtual std::vector< float > | calc_soft_dec (gr_complex sample, float npwr=-1) |
| Calculate soft decisions for the given sample . More...
|
|
void | set_soft_dec_lut (const std::vector< std::vector< float >> &soft_dec_lut, int precision) |
| Define a soft decision look-up table. More...
|
|
void | set_npwr (float npwr) |
| Sets the constellation noise power and recalculates LUT given npwr . More...
|
|
bool | has_soft_dec_lut () |
| Returns True if the soft decision LUT has been defined, False otherwise. More...
|
|
std::vector< std::vector< float > > | soft_dec_lut () |
|
std::vector< float > | soft_decision_maker (gr_complex sample) |
| Returns the soft decisions for the given sample . More...
|
|
constellation_psk
Constellation space is divided into pie slices sectors.
Each slice is associated with the nearest constellation point.
Works well for PSK but nothing else.
Assumes that there is a constellation point at 1.x