#define VUMETER_H
#include <QWidget>
+#include <QLabel>
#include <QPaintEvent>
#include <mutex>
public:
VUMeter(QWidget *parent);
- void set_level(float level) {
+ void set_level(float level_lufs) {
std::unique_lock<std::mutex> lock(level_mutex);
- this->level = level;
- update();
+ this->level_lufs = level_lufs;
+ QMetaObject::invokeMethod(this, "update", Qt::AutoConnection);
}
private:
void paintEvent(QPaintEvent *event) override;
std::mutex level_mutex;
- float level = -HUGE_VAL;
+ float level_lufs = -HUGE_VAL;
};
-extern VUMeter *global_vu_meter;
-
#endif