|
HARDT - The Ham Radio DSP Toolkit
|
#include <hagc.h>


Public Member Functions | |
| HAgc (HWriter< T > *writer, T level, int average, size_t blocksize, int increment=4, bool allowUnity=false, HProbe< T > *probe=NULL) | |
| HAgc (HWriterConsumer< T > *consumer, T level, int average, size_t blocksize, int increment=1, bool allowUnity=false, HProbe< T > *probe=NULL) | |
| HAgc (HReader< T > *reader, T level, int average, size_t blocksize, int increment=1, bool allowUnity=false, HProbe< T > *probe=NULL) | |
| ~HAgc () | |
| virtual void | Filter (T *src, T *dest, size_t blocksize) |
| void | SetLevel (T level) |
| void | SetAverage (int average) |
| void | SetEnabled (bool enabled) |
| void | SetGain (float gain) |
Public Member Functions inherited from HGain< T > | |
| HGain (HWriter< T > *writer, float gain, size_t blocksize, HProbe< T > *probe=NULL) | |
| HGain (HWriterConsumer< T > *consumer, float gain, size_t blocksize, HProbe< T > *probe=NULL) | |
| HGain (HReader< T > *reader, float gain, size_t blocksize, HProbe< T > *probe=NULL) | |
| ~HGain () | |
| void | SetGain (float gain) |
| float | GetGain () |
Public Member Functions inherited from HFilter< T > | |
| ~HFilter () | |
| int | Write (T *src, size_t blocksize) |
| int | Read (T *dest, size_t blocksize) |
| bool | Start () |
| bool | Stop () |
| bool | Command (HCommand *command) |
| void | Enable () |
| void | Disable () |
| bool | GetEnabled () |
Public Member Functions inherited from HObject | |
| HObject () | |
Public Member Functions inherited from HWriter< T > | |
| virtual | ~HWriter ()=default |
| HWriter< T > * | Writer () |
Public Member Functions inherited from HReader< T > | |
| virtual | ~HReader ()=default |
| HReader< T > * | Reader () |
Public Member Functions inherited from HWriterConsumer< T > | |
| HWriterConsumer< T > * | Consumer () |
Additional Inherited Members | |
Static Public Member Functions inherited from HFilter< T > | |
| static std::vector< float > | ReadCoeffsFromFile (std::string filename) |
| static std::vector< float > | ReadCoeffsFromFile (char *filename) |
Protected Member Functions inherited from HFilter< T > | |
| HFilter (HWriter< T > *writer, size_t blocksize, HProbe< T > *probe=NULL) | |
| HFilter (HWriterConsumer< T > *consumer, size_t blocksize, HProbe< T > *probe=NULL) | |
| HFilter (HReader< T > *reader, size_t blocksize, HProbe< T > *probe=NULL) | |
| void | SetWriter (HWriter< T > *writer) |
Protected Attributes inherited from HFilter< T > | |
| int | _blocksize |
A filter providing automatic gain (or attenuation)
| HAgc< T >::HAgc | ( | HWriter< T > * | writer, |
| T | level, | ||
| int | average, | ||
| size_t | blocksize, | ||
| int | increment = 4, |
||
| bool | allowUnity = false, |
||
| HProbe< T > * | probe = NULL |
||
| ) |
Construct a new HAgc object that writes to a writer
| writer | Downstream writer |
| level | Desired output level |
| average | Number of blocks to average over when comparing to desired output level |
| blocksize | Blocksize |
| increment | When a larger or smaller gain is needed, gain is increased/decreased by this fraction of the full needed increment |
| allowUnity | Allow use of unity gain (1), do not reduce gain further |
| probe | Probe |
| HAgc< T >::HAgc | ( | HWriterConsumer< T > * | consumer, |
| T | level, | ||
| int | average, | ||
| size_t | blocksize, | ||
| int | increment = 1, |
||
| bool | allowUnity = false, |
||
| HProbe< T > * | probe = NULL |
||
| ) |
Construct a new HAgc object that registers with an upstream writer
| consumer | Upstream consumer |
| level | Desired output level |
| average | Number of blocks to average over when comparing to desired output level |
| blocksize | Blocksize |
| increment | When a larger or smaller gain is needed, gain is increased/decreased by this fraction of the full needed increment |
| allowUnity | Allow use of unity gain (1), do not reduce gain further |
| probe | Probe |
| HAgc< T >::HAgc | ( | HReader< T > * | reader, |
| T | level, | ||
| int | average, | ||
| size_t | blocksize, | ||
| int | increment = 1, |
||
| bool | allowUnity = false, |
||
| HProbe< T > * | probe = NULL |
||
| ) |
Construct a new HAgc object that reads from a reader
| reader | Upstream reader |
| level | Desired output level |
| average | Number of blocks to average over when comparing to desired output level |
| blocksize | Blocksize |
| increment | When a larger or smaller gain is needed, gain is increased/decreased by this fraction of the full needed increment |
| allowUnity | Allow use of unity gain (1), do not reduce gain further |
| probe | Probe |
|
virtual |
Run a block of samples through the gain filter
Reimplemented from HGain< T >.
|
inline |
Set average (how many blocks is averaged before evaluating the gain again)
|
inline |
Enable or disable the automatic gain control
|
inline |
Set the gain level. This will disable the automatic gain control
|
inline |
Set bounds (lowest and highest value in the hysteresis interval)
1.8.17