GNU Radio's MESA Package
MesaSignals::EnergyAnalyzer Class Reference

#include <signals_mesa.h>

Public Member Functions

 EnergyAnalyzer (int initFFTSize, float initSquelchThreshold, float initMinDutyCycle, bool useWindow=true)
virtual ~EnergyAnalyzer ()
void setThreshold (float newThreshold)
float getThreshold ()
void setDutyCycle (float newDutyCycle)
float getDutyCycle ()
float getFFTSize ()
FFTgetFFTProcessor ()
virtual long analyze (const SComplex *frame, long numSamples, SpectrumOverviewVector &results)
virtual long maxHold (const SComplex *frame, long numSamples, FloatVector &maxSpectrum, bool useSquelch=true)
float maxPower (FloatVector &maxSpectrum)
void analyzeSpectrum (const float *spectrum, float &dutyCycle, float &maxPower, float &minPower, float &centerAvgPower, float &avgPower)
int findSignals (const float *spectrum, double sampleRate, double centerFrequencyHz, double minWidthHz, double maxWidthHz, SignalOverviewVector &signalVector, bool stopOnFirst)
int findSingleSignal (const float *spectrum, double sampleRate, double centerFrequencyHz, double minWidthHz, SignalOverview &signalOverview)
long getWaterfall (const SComplex *frame, long numSamples, WaterfallData &waterfallData)
long powerBinarySlicer (const SComplex *frame, long numSamples, FloatVector &bits, float &rssi)
bool energyPresent (const SComplex *frame, long numSamples, float &rssi)
long countEnergyBlocks (const SComplex *frame, long numSamples, float &rssi)

Protected Attributes

int fftSize
int centerBucket
float squelchThreshold
float minDutyCycle
FFTfftProc
float * psdSpectrum

Constructor & Destructor Documentation

◆ EnergyAnalyzer()

MesaSignals::EnergyAnalyzer::EnergyAnalyzer ( int initFFTSize,
float initSquelchThreshold,
float initMinDutyCycle,
bool useWindow = true )

◆ ~EnergyAnalyzer()

virtual MesaSignals::EnergyAnalyzer::~EnergyAnalyzer ( )
virtual

Member Function Documentation

◆ analyze()

virtual long MesaSignals::EnergyAnalyzer::analyze ( const SComplex * frame,
long numSamples,
SpectrumOverviewVector & results )
virtual

◆ analyzeSpectrum()

void MesaSignals::EnergyAnalyzer::analyzeSpectrum ( const float * spectrum,
float & dutyCycle,
float & maxPower,
float & minPower,
float & centerAvgPower,
float & avgPower )

References maxPower().

◆ countEnergyBlocks()

long MesaSignals::EnergyAnalyzer::countEnergyBlocks ( const SComplex * frame,
long numSamples,
float & rssi )

◆ energyPresent()

bool MesaSignals::EnergyAnalyzer::energyPresent ( const SComplex * frame,
long numSamples,
float & rssi )

◆ findSignals()

int MesaSignals::EnergyAnalyzer::findSignals ( const float * spectrum,
double sampleRate,
double centerFrequencyHz,
double minWidthHz,
double maxWidthHz,
SignalOverviewVector & signalVector,
bool stopOnFirst )

◆ findSingleSignal()

int MesaSignals::EnergyAnalyzer::findSingleSignal ( const float * spectrum,
double sampleRate,
double centerFrequencyHz,
double minWidthHz,
SignalOverview & signalOverview )

◆ getDutyCycle()

float MesaSignals::EnergyAnalyzer::getDutyCycle ( )
inline

References minDutyCycle.

◆ getFFTProcessor()

FFT * MesaSignals::EnergyAnalyzer::getFFTProcessor ( )
inline

References fftProc.

◆ getFFTSize()

float MesaSignals::EnergyAnalyzer::getFFTSize ( )
inline

References fftSize.

◆ getThreshold()

float MesaSignals::EnergyAnalyzer::getThreshold ( )
inline

References squelchThreshold.

◆ getWaterfall()

long MesaSignals::EnergyAnalyzer::getWaterfall ( const SComplex * frame,
long numSamples,
WaterfallData & waterfallData )

◆ maxHold()

virtual long MesaSignals::EnergyAnalyzer::maxHold ( const SComplex * frame,
long numSamples,
FloatVector & maxSpectrum,
bool useSquelch = true )
virtual

◆ maxPower()

float MesaSignals::EnergyAnalyzer::maxPower ( FloatVector & maxSpectrum)

Referenced by analyzeSpectrum().

◆ powerBinarySlicer()

long MesaSignals::EnergyAnalyzer::powerBinarySlicer ( const SComplex * frame,
long numSamples,
FloatVector & bits,
float & rssi )

◆ setDutyCycle()

void MesaSignals::EnergyAnalyzer::setDutyCycle ( float newDutyCycle)
inline

References minDutyCycle.

◆ setThreshold()

void MesaSignals::EnergyAnalyzer::setThreshold ( float newThreshold)
inline

References squelchThreshold.

Member Data Documentation

◆ centerBucket

int MesaSignals::EnergyAnalyzer::centerBucket
protected

◆ fftProc

FFT* MesaSignals::EnergyAnalyzer::fftProc
protected

Referenced by getFFTProcessor().

◆ fftSize

int MesaSignals::EnergyAnalyzer::fftSize
protected

Referenced by getFFTSize().

◆ minDutyCycle

float MesaSignals::EnergyAnalyzer::minDutyCycle
protected

Referenced by getDutyCycle(), and setDutyCycle().

◆ psdSpectrum

float* MesaSignals::EnergyAnalyzer::psdSpectrum
protected

◆ squelchThreshold

float MesaSignals::EnergyAnalyzer::squelchThreshold
protected

Referenced by getThreshold(), and setThreshold().


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