Clementine-audio-player-Mac.../src/analyzers/boomanalyzer.h

45 lines
866 B
C++

// Author: Max Howell <max.howell@methylblue.com>, (C) 2004
// Copyright: See COPYING file that comes with this distribution
//
#ifndef BOOMANALYZER_H
#define BOOMANALYZER_H
#include "analyzerbase.h"
/**
@author Max Howell
*/
class BoomAnalyzer : public Analyzer::Base {
Q_OBJECT
public:
Q_INVOKABLE BoomAnalyzer(QWidget*);
static const char* kName;
virtual void init();
virtual void transform(Scope& s);
virtual void analyze(QPainter& p, const Scope&, bool new_frame);
public slots:
void changeK_barHeight(int);
void changeF_peakSpeed(int);
protected:
void resizeEvent(QResizeEvent* e);
static const uint COLUMN_WIDTH = 4;
static const uint BAND_COUNT = 32;
double K_barHeight, F_peakSpeed, F;
std::vector<float> bar_height;
std::vector<float> peak_height;
std::vector<float> peak_speed;
QPixmap barPixmap;
};
#endif