Subversion Repositories seema-scanner

Rev

Rev 2 | Rev 23 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 4
Line 1... Line 1...
1
#include "SMScanner.h"
1
#include "SMScanner.h"
2
#include "ui_SMScanner.h"
2
#include "ui_SMScanner.h"
3
 
3
 
-
 
4
#include <QMetaObject>
-
 
5
 
4
SMScanner::SMScanner(QWidget *parent) :QMainWindow(parent), ui(new Ui::SMScanner){
6
SMScanner::SMScanner(QWidget *parent) :QMainWindow(parent), ui(new Ui::SMScanner){
5
    ui->setupUi(this);
7
    ui->setupUi(this);
-
 
8
 
-
 
9
    // Restore geometry
-
 
10
    this->restoreGeometry(settings.value("geometry/mainwindow").toByteArray());
-
 
11
    this->restoreState(settings.value("state/mainwindow").toByteArray());
-
 
12
 
-
 
13
    // Set up threads
-
 
14
    captureWorker = new SMCaptureWorker;
-
 
15
    captureWorkerThread = new QThread(this);
-
 
16
    captureWorkerThread->setObjectName("captureWorkerThread");
-
 
17
    captureWorker->moveToThread(captureWorkerThread);
-
 
18
    captureWorkerThread->start();
-
 
19
 
-
 
20
    // Connections
-
 
21
    qRegisterMetaType<cv::Mat>("cv::Mat");
-
 
22
    qRegisterMetaType< std::vector<cv::Mat> >("std::vector<cv::Mat>");
-
 
23
    connect(captureWorker, SIGNAL(newFrameSet(std::vector<cv::Mat>)), this, SLOT(onReceiveNewFrameSet(std::vector<cv::Mat>)));
-
 
24
 
-
 
25
    // Start capturing
-
 
26
    QMetaObject::invokeMethod(captureWorker, "setup");
-
 
27
    QMetaObject::invokeMethod(captureWorker, "doWork");
-
 
28
 
-
 
29
}
-
 
30
 
-
 
31
void SMScanner::onReceiveNewFrameSet(std::vector<cv::Mat> frameSet){
-
 
32
 
-
 
33
    ui->calibrationCamera0Widget->showImageCV(frameSet[0]);
-
 
34
    ui->calibrationCamera1Widget->showImageCV(frameSet[1]);
-
 
35
 
-
 
36
    ui->captureCamera0Widget->showImageCV(frameSet[0]);
-
 
37
    ui->captureCamera1Widget->showImageCV(frameSet[1]);
-
 
38
 
-
 
39
}
-
 
40
 
-
 
41
void SMScanner::on_actionPreferences_triggered()
-
 
42
{
-
 
43
    preferenceDialog.show();
-
 
44
}
-
 
45
 
-
 
46
void SMScanner::closeEvent(QCloseEvent *event){
-
 
47
 
-
 
48
    // Save window geometry
-
 
49
    settings.setValue("geometry/mainwindow", this->saveGeometry());
-
 
50
    settings.setValue("state/mainwindow", this->saveState());
-
 
51
 
-
 
52
    event->accept();
-
 
53
 
6
}
54
}
7
 
55
 
8
SMScanner::~SMScanner(){
56
SMScanner::~SMScanner(){
9
    delete ui;
57
    delete ui;
10
}
58
}
-
 
59