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 
)

◆ 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

◆ getFFTProcessor()

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

◆ getFFTSize()

float MesaSignals::EnergyAnalyzer::getFFTSize ( )
inline

◆ getThreshold()

float MesaSignals::EnergyAnalyzer::getThreshold ( )
inline

◆ 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)

◆ powerBinarySlicer()

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

◆ setDutyCycle()

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

◆ setThreshold()

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

Member Data Documentation

◆ centerBucket

int MesaSignals::EnergyAnalyzer::centerBucket
protected

◆ fftProc

FFT* MesaSignals::EnergyAnalyzer::fftProc
protected

◆ fftSize

int MesaSignals::EnergyAnalyzer::fftSize
protected

◆ minDutyCycle

float MesaSignals::EnergyAnalyzer::minDutyCycle
protected

◆ psdSpectrum

float* MesaSignals::EnergyAnalyzer::psdSpectrum
protected

◆ squelchThreshold

float MesaSignals::EnergyAnalyzer::squelchThreshold
protected

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