summaryrefslogtreecommitdiffhomepage
path: root/video/video-widget.hpp
diff options
context:
space:
mode:
authorStanislaw Halik <sthalik@misaki.pl>2019-02-11 20:07:41 +0100
committerStanislaw Halik <sthalik@misaki.pl>2019-02-11 20:21:36 +0100
commit85fc6ac25d350950be56ba47b06c247216f2e22a (patch)
tree6a4b4a65e9084c9595c28c4045824376a8c577d3 /video/video-widget.hpp
parent5d6cccb406e4aa4fe3e8430690296e5f59474e48 (diff)
video/widget: externalize opencv code
Diffstat (limited to 'video/video-widget.hpp')
-rw-r--r--video/video-widget.hpp23
1 files changed, 8 insertions, 15 deletions
diff --git a/video/video-widget.hpp b/video/video-widget.hpp
index b610557d..563f468c 100644
--- a/video/video-widget.hpp
+++ b/video/video-widget.hpp
@@ -8,45 +8,38 @@
#pragma once
#include "compat/math.hpp"
+#include "export.hpp"
#include <vector>
-#ifdef OTR_VIDEO_HAS_OPENCV
-# include <opencv2/core.hpp>
-#endif
-
#include <QWidget>
#include <QTimer>
#include <QMutex>
-class cv_video_widget final : public QWidget
+class OTR_VIDEO_EXPORT video_widget : public QWidget
{
Q_OBJECT
public:
- cv_video_widget(QWidget *parent);
+ video_widget(QWidget* parent = nullptr);
-#ifdef OTR_VIDEO_HAS_OPENCV
- void update_image(const cv::Mat& frame);
-#endif
void update_image(const QImage& image);
void get_preview_size(int& w, int& h);
void resizeEvent(QResizeEvent*) override;
-private slots:
+protected slots:
void paintEvent(QPaintEvent*) override;
void update_and_repaint();
private:
+ QTimer timer;
+
+protected:
QMutex mtx { QMutex::Recursive };
QImage texture;
std::vector<unsigned char> vec;
- QTimer timer;
-#ifdef OTR_VIDEO_HAS_OPENCV
- cv::Mat frame2, frame3;
-#endif
bool freshp = false;
- int W = iround(QWidget::width() * devicePixelRatioF());
+ int W = iround(QWidget::width() * devicePixelRatioF());
int H = iround(QWidget::height() * devicePixelRatioF());
void init_image_nolock();