// Copyright (c) 2012-2017 VideoStitch SAS // Copyright (c) 2018 stitchEm #pragma once #include "libvideostitch-gui/common.hpp" #include "libvideostitch-gui/mainwindow/versionHelper.hpp" #include #include #include #include class ModalProgressDialog; class Updater; class VS_GUI_EXPORT StitchingWindow : public QMainWindow { Q_OBJECT public: explicit StitchingWindow(QWidget* parent = nullptr, Qt::WindowFlags flags = 0); ~StitchingWindow(); QVector getCurrentDevices() const; QString getGpuNames() const; QString getGpuInfo(QList usedBytesByDevices); signals: void reqCancelKernelCompile(); void reqManualUpdate(); protected slots: void onKernelProgressChanged(const QString& message, double progress); void onKernelCompileDone(); private: void buildDeviceList(); protected: private: /** * List of GPUs */ QVector currentDevices; QPointer kernelCompilationProgressWindow; QThread updaterThread; };