48 lines
983 B
C++
48 lines
983 B
C++
#pragma once
|
|
|
|
#include "GLPanel.h"
|
|
|
|
class SpectrumPanel : public GLPanel {
|
|
public:
|
|
SpectrumPanel();
|
|
|
|
void setPoints(std::vector<float> &points);
|
|
void setPeakPoints(std::vector<float> &points);
|
|
|
|
float getFloorValue();
|
|
void setFloorValue(float floorValue);
|
|
|
|
float getCeilValue();
|
|
void setCeilValue(float ceilValue);
|
|
|
|
void setFreq(long long freq);
|
|
long long getFreq();
|
|
|
|
void setBandwidth(long long bandwidth);
|
|
long long getBandwidth();
|
|
|
|
void setFFTSize(int fftSize_in);
|
|
int getFFTSize();
|
|
|
|
void setShowDb(bool showDb);
|
|
bool getShowDb();
|
|
|
|
void setUseDBOffset(bool useOfs);
|
|
bool getUseDBOffset();
|
|
|
|
protected:
|
|
void drawPanelContents();
|
|
|
|
private:
|
|
float floorValue, ceilValue;
|
|
int fftSize;
|
|
long long freq;
|
|
long long bandwidth;
|
|
std::vector<float> points;
|
|
std::vector<float> peak_points;
|
|
|
|
GLTextPanel dbPanelCeil;
|
|
GLTextPanel dbPanelFloor;
|
|
bool showDb, useDbOfs;
|
|
};
|