/float*/std::vector/ in fft_result.
This commit is contained in:
parent
a63e1add6d
commit
b7aa98ee0c
@ -26,35 +26,24 @@
|
||||
|
||||
using namespace std;
|
||||
|
||||
FFTResult::FFTResult(FFTGraph *graph, Gdk::Color color, string trackname)
|
||||
{
|
||||
_graph = graph;
|
||||
|
||||
_windowSize = _graph->windowSize();
|
||||
_dataSize = _windowSize / 2;
|
||||
_averages = 0;
|
||||
_min_flat = _max_flat = 0.0;
|
||||
_min_prop = _max_prop = 0.0;
|
||||
|
||||
_data_flat_avg = (float *) malloc (sizeof(float) * _dataSize);
|
||||
_data_flat_min = (float *) malloc (sizeof(float) * _dataSize);
|
||||
_data_flat_max = (float *) malloc (sizeof(float) * _dataSize);
|
||||
_data_prop_avg = (float *) malloc (sizeof(float) * _dataSize);
|
||||
_data_prop_min = (float *) malloc (sizeof(float) * _dataSize);
|
||||
_data_prop_max = (float *) malloc (sizeof(float) * _dataSize);
|
||||
|
||||
for (unsigned int i = 0; i < _dataSize; i++) {
|
||||
_data_flat_min[i] = FLT_MAX;
|
||||
_data_flat_max[i] = FLT_MIN;
|
||||
_data_flat_avg[i] = 0;
|
||||
_data_prop_min[i] = FLT_MAX;
|
||||
_data_prop_max[i] = FLT_MIN;
|
||||
_data_prop_avg[i] = 0;
|
||||
}
|
||||
|
||||
_color = color;
|
||||
_trackname = trackname;
|
||||
}
|
||||
FFTResult::FFTResult(FFTGraph *graph, Gdk::Color color, string trackname) :
|
||||
_graph(graph),
|
||||
_windowSize(_graph->windowSize()),
|
||||
_dataSize(_windowSize / 2),
|
||||
_averages(0),
|
||||
_min_flat(0.0),
|
||||
_max_flat(0.0),
|
||||
_min_prop(0.0),
|
||||
_max_prop(0.0),
|
||||
_data_flat_avg(_dataSize, 0),
|
||||
_data_flat_max(_dataSize, FLT_MIN),
|
||||
_data_flat_min(_dataSize, FLT_MAX),
|
||||
_data_prop_avg(_dataSize, 0),
|
||||
_data_prop_max(_dataSize, FLT_MIN),
|
||||
_data_prop_min(_dataSize, FLT_MAX),
|
||||
_color(color),
|
||||
_trackname(trackname)
|
||||
{}
|
||||
|
||||
void
|
||||
FFTResult::analyzeWindow(float *window)
|
||||
@ -133,12 +122,3 @@ FFTResult::finalize()
|
||||
_averages = 0;
|
||||
}
|
||||
|
||||
FFTResult::~FFTResult()
|
||||
{
|
||||
free(_data_flat_avg);
|
||||
free(_data_flat_min);
|
||||
free(_data_flat_max);
|
||||
free(_data_prop_avg);
|
||||
free(_data_prop_min);
|
||||
free(_data_prop_max);
|
||||
}
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include <gdkmm/color.h>
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
class FFTGraph;
|
||||
|
||||
@ -33,7 +34,7 @@ class FFTResult
|
||||
{
|
||||
public:
|
||||
|
||||
~FFTResult ();
|
||||
~FFTResult () = default;
|
||||
|
||||
void analyzeWindow (float *window);
|
||||
void finalize ();
|
||||
@ -58,24 +59,24 @@ private:
|
||||
FFTResult (FFTGraph *graph, Gdk::Color color, std::string trackname);
|
||||
friend class FFTGraph;
|
||||
|
||||
int _averages;
|
||||
|
||||
float* _data_flat_avg;
|
||||
float* _data_flat_max;
|
||||
float* _data_flat_min;
|
||||
float* _data_prop_avg;
|
||||
float* _data_prop_max;
|
||||
float* _data_prop_min;
|
||||
FFTGraph *_graph;
|
||||
|
||||
unsigned int _windowSize;
|
||||
unsigned int _dataSize;
|
||||
|
||||
int _averages;
|
||||
|
||||
float _min_flat;
|
||||
float _max_flat;
|
||||
float _min_prop;
|
||||
float _max_prop;
|
||||
|
||||
FFTGraph *_graph;
|
||||
std::vector<float> _data_flat_avg;
|
||||
std::vector<float> _data_flat_max;
|
||||
std::vector<float> _data_flat_min;
|
||||
std::vector<float> _data_prop_avg;
|
||||
std::vector<float> _data_prop_max;
|
||||
std::vector<float> _data_prop_min;
|
||||
|
||||
Gdk::Color _color;
|
||||
std::string _trackname;
|
||||
|
Loading…
Reference in New Issue
Block a user