Subversion Repositories seema-scanner

Rev

Rev 22 | Rev 25 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

#ifndef MVCALIBRATIONDIALOG_H
#define MVCALIBRATIONDIALOG_H

#include <QDialog>
#include <QThread>
#include <QModelIndex>

#include "MVCaptureWorker.h"
#include "MVCalibrationData.h"

namespace Ui {
    class MVCalibrationDialog;
}

class MVCalibrationDialog : public QDialog{
    Q_OBJECT

    public:
        explicit MVCalibrationDialog(QWidget *parent = 0);
        void closeEvent(QCloseEvent *event);
        ~MVCalibrationDialog();
    public slots:
        void receiveNewFrameSet(std::vector<cv::Mat> frameSet);
        void addFrameSetToCalibration(std::vector<cv::Mat> frameSet);

    private slots:
        void on_snapButton_clicked();
        void on_listWidget_clicked(const QModelIndex &index);
        void on_calibrateButton_clicked();

        void on_listWidget_currentRowChanged(int currentRow);

        void on_saveButton_clicked();

private:
        bool reviewMode;
        Ui::MVCalibrationDialog *ui;
        QThread *captureWorkerThread;
        MVCaptureWorker *captureWorker;
        std::vector< std::vector<cv::Mat> > calibrationSets;
        std::vector< std::vector<cv::Mat> > calibrationResults;

        MVCalibrationData cal;
};

#endif // MVCALIBRATIONDIALOG_H