GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
gr::analog::kernel::agc2_cc Class Reference

high performance Automatic Gain Control class More...

#include <gnuradio/analog/agc2.h>

Public Member Functions

 agc2_cc (float attack_rate=1e-1, float decay_rate=1e-2, float reference=1.0, float gain=1.0, float max_gain=0.0)
 
float decay_rate () const
 
float attack_rate () const
 
float reference () const
 
float gain () const
 
float max_gain () const
 
void set_decay_rate (float rate)
 
void set_attack_rate (float rate)
 
void set_reference (float reference)
 
void set_gain (float gain)
 
void set_max_gain (float max_gain)
 
gr_complex scale (gr_complex input)
 
void scaleN (gr_complex output[], const gr_complex input[], unsigned n)
 

Protected Attributes

float _attack_rate
 
float _decay_rate
 
float _reference
 
float _gain
 
float _max_gain
 

Detailed Description

high performance Automatic Gain Control class

For Power the absolute value of the complex number is used.

Constructor & Destructor Documentation

◆ agc2_cc()

gr::analog::kernel::agc2_cc::agc2_cc ( float  attack_rate = 1e-1,
float  decay_rate = 1e-2,
float  reference = 1.0,
float  gain = 1.0,
float  max_gain = 0.0 
)
inline

Construct a comple value AGC loop implementation object.

Parameters
attack_ratethe update rate of the loop when in attack mode.
decay_ratethe update rate of the loop when in decay mode.
referencereference value to adjust signal power to.
gaininitial gain value.
max_gainmaximum gain value (0 for unlimited).

Member Function Documentation

◆ attack_rate()

float gr::analog::kernel::agc2_cc::attack_rate ( ) const
inline

◆ decay_rate()

float gr::analog::kernel::agc2_cc::decay_rate ( ) const
inline

◆ gain()

float gr::analog::kernel::agc2_cc::gain ( ) const
inline

◆ max_gain()

float gr::analog::kernel::agc2_cc::max_gain ( ) const
inline

◆ reference()

float gr::analog::kernel::agc2_cc::reference ( ) const
inline

◆ scale()

gr_complex gr::analog::kernel::agc2_cc::scale ( gr_complex  input)
inline

◆ scaleN()

void gr::analog::kernel::agc2_cc::scaleN ( gr_complex  output[],
const gr_complex  input[],
unsigned  n 
)
inline

◆ set_attack_rate()

void gr::analog::kernel::agc2_cc::set_attack_rate ( float  rate)
inline

◆ set_decay_rate()

void gr::analog::kernel::agc2_cc::set_decay_rate ( float  rate)
inline

◆ set_gain()

void gr::analog::kernel::agc2_cc::set_gain ( float  gain)
inline

◆ set_max_gain()

void gr::analog::kernel::agc2_cc::set_max_gain ( float  max_gain)
inline

◆ set_reference()

void gr::analog::kernel::agc2_cc::set_reference ( float  reference)
inline

Member Data Documentation

◆ _attack_rate

float gr::analog::kernel::agc2_cc::_attack_rate
protected

◆ _decay_rate

float gr::analog::kernel::agc2_cc::_decay_rate
protected

◆ _gain

float gr::analog::kernel::agc2_cc::_gain
protected

◆ _max_gain

float gr::analog::kernel::agc2_cc::_max_gain
protected

◆ _reference

float gr::analog::kernel::agc2_cc::_reference
protected

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