X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=vumeter.h;fp=vumeter.h;h=de27529d937229937a45fd9ebee485227fdcbd16;hb=24e4026778bfd87612d5bedce1bfa51455853bc3;hp=0000000000000000000000000000000000000000;hpb=4159eda78000e5ce498cd6ce31da5e750c2c0a42;p=nageru diff --git a/vumeter.h b/vumeter.h new file mode 100644 index 0000000..de27529 --- /dev/null +++ b/vumeter.h @@ -0,0 +1,31 @@ +#ifndef VUMETER_H +#define VUMETER_H + +#include +#include + +#include + +class VUMeter : public QWidget +{ + Q_OBJECT + +public: + VUMeter(QWidget *parent); + + void set_level(float level) { + std::unique_lock lock(level_mutex); + this->level = level; + update(); + } + +private: + void paintEvent(QPaintEvent *event) override; + + std::mutex level_mutex; + float level = -HUGE_VAL; +}; + +extern VUMeter *global_vu_meter; + +#endif