Subversion Repositories seema-scanner

Rev

Rev 9 | Rev 24 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 jakw 1
#ifndef SMSCANNER_H
2
#define SMSCANNER_H
3
 
4
#include <QMainWindow>
4 jakw 5
#include <QSettings>
6
#include <QThread>
7
#include <QCloseEvent>
1 jakw 8
 
9 jakw 9
#include "SMPreferenceDialog.h"
4 jakw 10
#include "SMCaptureWorker.h"
11
#include "SMTriangulationWorker.h"
12
 
13
#include <opencv2/opencv.hpp>
14
#include <pcl/point_cloud.h>
15
#include <pcl/point_types.h>
16
 
23 jakw 17
 
1 jakw 18
namespace Ui {
23 jakw 19
    class SMScanner;
1 jakw 20
}
21
 
23 jakw 22
class SMScanner : public QMainWindow{
1 jakw 23
    Q_OBJECT
24
 
23 jakw 25
    public:
26
        explicit SMScanner(QWidget *parent = 0);
27
        void closeEvent(QCloseEvent *event);
28
        ~SMScanner();
1 jakw 29
 
23 jakw 30
    private slots:
31
        void on_actionPreferences_triggered();
4 jakw 32
 
23 jakw 33
        void onReceiveFrame(unsigned int camId, cv::Mat frame);
34
        void onReceiveCalibrationSet(CalibrationSet calibrationSet);
35
 
36
        void on_singleCalibrationButton_clicked();
37
 
38
        void on_calibrationRotationDial_sliderReleased();
39
 
1 jakw 40
private:
23 jakw 41
        Ui::SMScanner *ui;
4 jakw 42
 
23 jakw 43
        QSettings settings;
4 jakw 44
 
23 jakw 45
        SMPreferenceDialog preferenceDialog;
4 jakw 46
 
23 jakw 47
        SMCaptureWorker *captureWorker;
48
        QThread *captureWorkerThread;
4 jakw 49
 
23 jakw 50
        SMTriangulationWorker *triangulationWorker;
51
        QThread *triangulationWorkerThread;
4 jakw 52
 
23 jakw 53
        std::vector< CalibrationSet > calibrationData;
54
        std::vector< FrameSequence > captureData;
55
        std::vector< pcl::PointCloud<pcl::PointXYZRGB>::Ptr > pointClouds;
1 jakw 56
};
57
 
58
#endif // SMSCANNER_H