GNU Radio 3.7.1 C++ API
gr::digital::mpsk_snr_est_cc Class Reference

A block for computing SNR of a signal. More...

#include <mpsk_snr_est_cc.h>

Inheritance diagram for gr::digital::mpsk_snr_est_cc:

List of all members.

Public Types

typedef boost::shared_ptr
< mpsk_snr_est_cc
sptr

Public Member Functions

virtual double snr ()=0
 Return the estimated signal-to-noise ratio in decibels.
virtual snr_est_type_t type () const =0
 Return the type of estimator in use.
virtual int tag_nsample () const =0
 Return how many samples between SNR tags.
virtual double alpha () const =0
 Get the running-average coefficient.
virtual void set_type (snr_est_type_t t)=0
 Set type of estimator to use.
virtual void set_tag_nsample (int n)=0
 Set the number of samples between SNR tags.
virtual void set_alpha (double alpha)=0
 Set the running-average coefficient.

Static Public Member Functions

static sptr make (snr_est_type_t type, int tag_nsamples=10000, double alpha=0.001)

Detailed Description

A block for computing SNR of a signal.

This block can be used to monitor and retrieve estimations of the signal SNR. It is designed to work in a flowgraph and passes all incoming data along to its output.

The block is designed for use with M-PSK signals especially. The type of estimator is specified as the type parameter in the constructor. The estimators tend to trade off performance for accuracy, although experimentation should be done to figure out the right approach for a given implementation. Further, the current set of estimators are designed and proven theoretically under AWGN conditions; some amount of error should be assumed and/or estimated for real channel conditions.


Member Typedef Documentation


Member Function Documentation

virtual double gr::digital::mpsk_snr_est_cc::alpha ( ) const [pure virtual]

Get the running-average coefficient.

static sptr gr::digital::mpsk_snr_est_cc::make ( snr_est_type_t  type,
int  tag_nsamples = 10000,
double  alpha = 0.001 
) [static]

Factory function returning shared pointer of this class

Parameters:
type,:the type of estimator to use gr::digital::snr_est_type_t "snr_est_type_t" for details about the available types
tag_nsamples,:after this many samples, a tag containing the SNR (key='snr') will be sent
alpha,:the update rate of internal running average calculations
virtual void gr::digital::mpsk_snr_est_cc::set_alpha ( double  alpha) [pure virtual]

Set the running-average coefficient.

virtual void gr::digital::mpsk_snr_est_cc::set_tag_nsample ( int  n) [pure virtual]

Set the number of samples between SNR tags.

Set type of estimator to use.

virtual double gr::digital::mpsk_snr_est_cc::snr ( ) [pure virtual]

Return the estimated signal-to-noise ratio in decibels.

virtual int gr::digital::mpsk_snr_est_cc::tag_nsample ( ) const [pure virtual]

Return how many samples between SNR tags.

virtual snr_est_type_t gr::digital::mpsk_snr_est_cc::type ( ) const [pure virtual]

Return the type of estimator in use.


The documentation for this class was generated from the following file: