diff options
Diffstat (limited to 'opentrack')
| -rw-r--r-- | opentrack/opencv-camera-dialog.hpp | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/opentrack/opencv-camera-dialog.hpp b/opentrack/opencv-camera-dialog.hpp index eac26bde..8fa71505 100644 --- a/opentrack/opencv-camera-dialog.hpp +++ b/opentrack/opencv-camera-dialog.hpp @@ -28,12 +28,14 @@  #   include <windows.h>  #endif +#ifdef _WIN32  static void init_com_threading(void)  {      HRESULT hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);      if (FAILED(hr))          qDebug() << "failed CoInitializeEx" << hr << "code" << GetLastError();  } +#endif  static void maybe_grab_frame(cv::VideoCapture& cap)  { @@ -55,9 +57,9 @@ public:          int idx = camera_name_to_index(camera_name);          QProcess::startDetached("qv4l2", QStringList() << "-d" << ("/dev/video" + QString::number(idx)));      } -#else      void open_camera_settings(cv::VideoCapture* cap, const QString& camera_name, QMutex* camera_mtx)      { +#elif defined(_WIN32)          if (cap)          {              QMutexLocker l(camera_mtx); @@ -89,7 +91,11 @@ public:          // HACK: we're not notified when it's safe to close the capture          t.start();      } +#else +    void open_camera_settings(cv::VideoCapture*, const QString&, QMutex*) {} +#endif  private: +#if defined(_WIN32)      cv::VideoCapture fake_capture;      QTimer t;      void delete_capture() @@ -100,4 +106,3 @@ private:  };  #endif - | 
