#ifndef IMAGEPIPELINE_H #define IMAGEPIPELINE_H #include #include #include #include "profile.h" #include "cameras.h" class ImagePipeline: public QObject { Q_OBJECT private: Cameras* cameras_; Profile profile_; bool invalid_ = true; std::vector*> futureImageWatchers_; static cv::Mat process(const Profile profile, std::vector images); private slots: void apply(std::vector images); void imageFinished(); signals: void sigInvalidProfile(QString message); void sigResult(Camera::Image image); void statusMsg(QString msg); public slots: void setProfile(const Profile& profile); public: ImagePipeline(Cameras* cameras, QObject* parent = nullptr); }; #endif // IMAGEPIPELINE_H