X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=analyzer.h;h=b5aad15c5e400075ac10890353841f5baf43e6a8;hb=d3e48df512d9476d3849227067792a3537bb094e;hp=d239c0e9da89318d958abf8ced26d2224c058474;hpb=66421f32d0f2e8a8bdb86b3f381a6ebb6426cf0c;p=nageru diff --git a/analyzer.h b/analyzer.h index d239c0e..b5aad15 100644 --- a/analyzer.h +++ b/analyzer.h @@ -1,11 +1,17 @@ #ifndef _ANALYZER_H #define _ANALYZER_H 1 -#include +#include +#include #include +#include + +#include #include +#include "mixer.h" + class QObject; class QOpenGLContext; class QSurface; @@ -18,22 +24,35 @@ namespace movit { class ResourcePool; } // namespace movit -class Analyzer : public QDialog +class Analyzer : public QMainWindow { Q_OBJECT public: Analyzer(); ~Analyzer(); + void update_channel_name(Mixer::Output output, const std::string &name); + void mixer_shutting_down(); + +public slots: + void relayout(); private: void grab_clicked(); + void signal_changed(); + void grab_pixel(int x, int y); + bool eventFilter(QObject *watched, QEvent *event) override; + void resizeEvent(QResizeEvent *event) override; + void showEvent(QShowEvent *event) override; Ui::Analyzer *ui; QSurface *surface; QOpenGLContext *context; GLuint pbo; movit::ResourcePool *resource_pool = nullptr; + QImage grabbed_image; + QTimer grab_timer; + int last_x = -1, last_y = -1; }; #endif // !defined(_ANALYZER_H)